Convert ra144.h tables from hex to decimal
[ffmpeg.git] / libavcodec / ra144.h
1 /*
2  * Real Audio 1.0 (14.4K)
3  * Copyright (c) 2003 the ffmpeg project
4  *
5  * This file is part of FFmpeg.
6  *
7  * FFmpeg is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * FFmpeg is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with FFmpeg; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20  */
21
22 #ifndef FFMPEG_RA144_H
23 #define FFMPEG_RA144_H
24
25 /* 14.4 data tables */
26 static const unsigned short sqrt_table[4096]={
27         0,  1024,  1448,  1773,  2048,  2289,  2508,  2709,
28      2896,  3072,  3238,  3396,  3547,  3692,  3831,  3965,
29      4096,  4222,  4344,  4463,  4579,  4692,  4802,  4910,
30      5016,  5120,  5221,  5320,  5418,  5514,  5608,  5701,
31      5792,  5882,  5970,  6058,  6144,  6228,  6312,  6394,
32      6476,  6556,  6636,  6714,  6792,  6869,  6945,  7020,
33      7094,  7168,  7240,  7312,  7384,  7454,  7524,  7594,
34      7662,  7731,  7798,  7865,  7931,  7997,  8062,  8127,
35      8192,  8255,  8319,  8381,  8444,  8505,  8567,  8628,
36      8688,  8749,  8808,  8868,  8927,  8985,  9043,  9101,
37      9158,  9216,  9272,  9329,  9385,  9440,  9496,  9551,
38      9605,  9660,  9714,  9768,  9821,  9875,  9928,  9980,
39     10033, 10085, 10137, 10188, 10240, 10291, 10341, 10392,
40     10442, 10492, 10542, 10592, 10641, 10690, 10739, 10788,
41     10836, 10885, 10933, 10981, 11028, 11076, 11123, 11170,
42     11217, 11264, 11310, 11356, 11402, 11448, 11494, 11539,
43     11585, 11630, 11675, 11720, 11764, 11809, 11853, 11897,
44     11941, 11985, 12029, 12072, 12116, 12159, 12202, 12245,
45     12288, 12330, 12373, 12415, 12457, 12499, 12541, 12583,
46     12624, 12666, 12707, 12748, 12789, 12830, 12871, 12912,
47     12952, 12993, 13033, 13073, 13113, 13153, 13193, 13232,
48     13272, 13312, 13351, 13390, 13429, 13468, 13507, 13546,
49     13584, 13623, 13661, 13700, 13738, 13776, 13814, 13852,
50     13890, 13927, 13965, 14002, 14040, 14077, 14114, 14151,
51     14188, 14225, 14262, 14299, 14336, 14372, 14408, 14445,
52     14481, 14517, 14553, 14589, 14625, 14661, 14697, 14732,
53     14768, 14803, 14839, 14874, 14909, 14944, 14979, 15014,
54     15049, 15084, 15119, 15153, 15188, 15222, 15257, 15291,
55     15325, 15360, 15394, 15428, 15462, 15495, 15529, 15563,
56     15597, 15630, 15664, 15697, 15730, 15764, 15797, 15830,
57     15863, 15896, 15929, 15962, 15995, 16028, 16060, 16093,
58     16125, 16158, 16190, 16223, 16255, 16287, 16319, 16351,
59     16384, 16415, 16447, 16479, 16511, 16543, 16574, 16606,
60     16638, 16669, 16700, 16732, 16763, 16794, 16826, 16857,
61     16888, 16919, 16950, 16981, 17011, 17042, 17073, 17104,
62     17134, 17165, 17195, 17226, 17256, 17287, 17317, 17347,
63     17377, 17408, 17438, 17468, 17498, 17528, 17557, 17587,
64     17617, 17647, 17676, 17706, 17736, 17765, 17795, 17824,
65     17854, 17883, 17912, 17941, 17971, 18000, 18029, 18058,
66     18087, 18116, 18145, 18174, 18203, 18231, 18260, 18289,
67     18317, 18346, 18375, 18403, 18432, 18460, 18488, 18517,
68     18545, 18573, 18601, 18630, 18658, 18686, 18714, 18742,
69     18770, 18798, 18826, 18853, 18881, 18909, 18937, 18964,
70     18992, 19019, 19047, 19075, 19102, 19129, 19157, 19184,
71     19211, 19239, 19266, 19293, 19320, 19347, 19374, 19402,
72     19429, 19456, 19482, 19509, 19536, 19563, 19590, 19617,
73     19643, 19670, 19697, 19723, 19750, 19776, 19803, 19829,
74     19856, 19882, 19908, 19935, 19961, 19987, 20013, 20040,
75     20066, 20092, 20118, 20144, 20170, 20196, 20222, 20248,
76     20274, 20300, 20325, 20351, 20377, 20403, 20428, 20454,
77     20480, 20505, 20531, 20556, 20582, 20607, 20633, 20658,
78     20683, 20709, 20734, 20759, 20784, 20810, 20835, 20860,
79     20885, 20910, 20935, 20960, 20985, 21010, 21035, 21060,
80     21085, 21110, 21135, 21159, 21184, 21209, 21234, 21258,
81     21283, 21308, 21332, 21357, 21381, 21406, 21430, 21455,
82     21479, 21504, 21528, 21552, 21577, 21601, 21625, 21649,
83     21673, 21698, 21722, 21746, 21770, 21794, 21818, 21842,
84     21866, 21890, 21914, 21938, 21962, 21986, 22010, 22033,
85     22057, 22081, 22105, 22128, 22152, 22176, 22199, 22223,
86     22246, 22270, 22294, 22317, 22341, 22364, 22387, 22411,
87     22434, 22458, 22481, 22504, 22528, 22551, 22574, 22597,
88     22620, 22644, 22667, 22690, 22713, 22736, 22759, 22782,
89     22805, 22828, 22851, 22874, 22897, 22920, 22943, 22965,
90     22988, 23011, 23034, 23057, 23079, 23102, 23125, 23147,
91     23170, 23193, 23215, 23238, 23260, 23283, 23305, 23328,
92     23350, 23373, 23395, 23418, 23440, 23462, 23485, 23507,
93     23529, 23552, 23574, 23596, 23618, 23640, 23663, 23685,
94     23707, 23729, 23751, 23773, 23795, 23817, 23839, 23861,
95     23883, 23905, 23927, 23949, 23971, 23993, 24014, 24036,
96     24058, 24080, 24102, 24123, 24145, 24167, 24188, 24210,
97     24232, 24253, 24275, 24297, 24318, 24340, 24361, 24383,
98     24404, 24426, 24447, 24469, 24490, 24511, 24533, 24554,
99     24576, 24597, 24618, 24639, 24661, 24682, 24703, 24724,
100     24746, 24767, 24788, 24809, 24830, 24851, 24872, 24893,
101     24914, 24936, 24957, 24978, 24999, 25019, 25040, 25061,
102     25082, 25103, 25124, 25145, 25166, 25187, 25207, 25228,
103     25249, 25270, 25290, 25311, 25332, 25353, 25373, 25394,
104     25415, 25435, 25456, 25476, 25497, 25517, 25538, 25559,
105     25579, 25600, 25620, 25640, 25661, 25681, 25702, 25722,
106     25742, 25763, 25783, 25803, 25824, 25844, 25864, 25885,
107     25905, 25925, 25945, 25966, 25986, 26006, 26026, 26046,
108     26066, 26086, 26106, 26127, 26147, 26167, 26187, 26207,
109     26227, 26247, 26267, 26287, 26307, 26326, 26346, 26366,
110     26386, 26406, 26426, 26446, 26465, 26485, 26505, 26525,
111     26545, 26564, 26584, 26604, 26624, 26643, 26663, 26683,
112     26702, 26722, 26741, 26761, 26781, 26800, 26820, 26839,
113     26859, 26878, 26898, 26917, 26937, 26956, 26976, 26995,
114     27014, 27034, 27053, 27073, 27092, 27111, 27131, 27150,
115     27169, 27189, 27208, 27227, 27246, 27266, 27285, 27304,
116     27323, 27342, 27362, 27381, 27400, 27419, 27438, 27457,
117     27476, 27495, 27514, 27533, 27553, 27572, 27591, 27610,
118     27629, 27648, 27666, 27685, 27704, 27723, 27742, 27761,
119     27780, 27799, 27818, 27836, 27855, 27874, 27893, 27912,
120     27930, 27949, 27968, 27987, 28005, 28024, 28043, 28062,
121     28080, 28099, 28118, 28136, 28155, 28173, 28192, 28211,
122     28229, 28248, 28266, 28285, 28303, 28322, 28340, 28359,
123     28377, 28396, 28414, 28433, 28451, 28470, 28488, 28506,
124     28525, 28543, 28562, 28580, 28598, 28617, 28635, 28653,
125     28672, 28690, 28708, 28726, 28745, 28763, 28781, 28799,
126     28817, 28836, 28854, 28872, 28890, 28908, 28926, 28944,
127     28963, 28981, 28999, 29017, 29035, 29053, 29071, 29089,
128     29107, 29125, 29143, 29161, 29179, 29197, 29215, 29233,
129     29251, 29269, 29287, 29305, 29322, 29340, 29358, 29376,
130     29394, 29412, 29429, 29447, 29465, 29483, 29501, 29518,
131     29536, 29554, 29572, 29589, 29607, 29625, 29642, 29660,
132     29678, 29696, 29713, 29731, 29748, 29766, 29784, 29801,
133     29819, 29836, 29854, 29872, 29889, 29907, 29924, 29942,
134     29959, 29977, 29994, 30012, 30029, 30047, 30064, 30081,
135     30099, 30116, 30134, 30151, 30168, 30186, 30203, 30221,
136     30238, 30255, 30273, 30290, 30307, 30324, 30342, 30359,
137     30376, 30394, 30411, 30428, 30445, 30462, 30480, 30497,
138     30514, 30531, 30548, 30566, 30583, 30600, 30617, 30634,
139     30651, 30668, 30685, 30702, 30720, 30737, 30754, 30771,
140     30788, 30805, 30822, 30839, 30856, 30873, 30890, 30907,
141     30924, 30941, 30958, 30974, 30991, 31008, 31025, 31042,
142     31059, 31076, 31093, 31110, 31126, 31143, 31160, 31177,
143     31194, 31211, 31227, 31244, 31261, 31278, 31294, 31311,
144     31328, 31345, 31361, 31378, 31395, 31411, 31428, 31445,
145     31461, 31478, 31495, 31511, 31528, 31545, 31561, 31578,
146     31595, 31611, 31628, 31644, 31661, 31677, 31694, 31710,
147     31727, 31744, 31760, 31777, 31793, 31809, 31826, 31842,
148     31859, 31875, 31892, 31908, 31925, 31941, 31957, 31974,
149     31990, 32007, 32023, 32039, 32056, 32072, 32088, 32105,
150     32121, 32137, 32154, 32170, 32186, 32203, 32219, 32235,
151     32251, 32268, 32284, 32300, 32316, 32333, 32349, 32365,
152     32381, 32397, 32414, 32430, 32446, 32462, 32478, 32494,
153     32510, 32527, 32543, 32559, 32575, 32591, 32607, 32623,
154     32639, 32655, 32671, 32687, 32703, 32719, 32735, 32751,
155     32768, 32783, 32799, 32815, 32831, 32847, 32863, 32879,
156     32895, 32911, 32927, 32943, 32959, 32975, 32991, 33007,
157     33023, 33038, 33054, 33070, 33086, 33102, 33118, 33133,
158     33149, 33165, 33181, 33197, 33212, 33228, 33244, 33260,
159     33276, 33291, 33307, 33323, 33339, 33354, 33370, 33386,
160     33401, 33417, 33433, 33448, 33464, 33480, 33495, 33511,
161     33527, 33542, 33558, 33574, 33589, 33605, 33620, 33636,
162     33652, 33667, 33683, 33698, 33714, 33729, 33745, 33760,
163     33776, 33792, 33807, 33823, 33838, 33854, 33869, 33884,
164     33900, 33915, 33931, 33946, 33962, 33977, 33993, 34008,
165     34023, 34039, 34054, 34070, 34085, 34100, 34116, 34131,
166     34146, 34162, 34177, 34193, 34208, 34223, 34238, 34254,
167     34269, 34284, 34300, 34315, 34330, 34346, 34361, 34376,
168     34391, 34407, 34422, 34437, 34452, 34467, 34483, 34498,
169     34513, 34528, 34543, 34559, 34574, 34589, 34604, 34619,
170     34634, 34649, 34665, 34680, 34695, 34710, 34725, 34740,
171     34755, 34770, 34785, 34800, 34816, 34831, 34846, 34861,
172     34876, 34891, 34906, 34921, 34936, 34951, 34966, 34981,
173     34996, 35011, 35026, 35041, 35056, 35071, 35086, 35100,
174     35115, 35130, 35145, 35160, 35175, 35190, 35205, 35220,
175     35235, 35250, 35264, 35279, 35294, 35309, 35324, 35339,
176     35353, 35368, 35383, 35398, 35413, 35428, 35442, 35457,
177     35472, 35487, 35501, 35516, 35531, 35546, 35560, 35575,
178     35590, 35605, 35619, 35634, 35649, 35664, 35678, 35693,
179     35708, 35722, 35737, 35752, 35766, 35781, 35796, 35810,
180     35825, 35840, 35854, 35869, 35883, 35898, 35913, 35927,
181     35942, 35956, 35971, 35985, 36000, 36015, 36029, 36044,
182     36058, 36073, 36087, 36102, 36116, 36131, 36145, 36160,
183     36174, 36189, 36203, 36218, 36232, 36247, 36261, 36276,
184     36290, 36305, 36319, 36333, 36348, 36362, 36377, 36391,
185     36406, 36420, 36434, 36449, 36463, 36477, 36492, 36506,
186     36521, 36535, 36549, 36564, 36578, 36592, 36607, 36621,
187     36635, 36650, 36664, 36678, 36692, 36707, 36721, 36735,
188     36750, 36764, 36778, 36792, 36807, 36821, 36835, 36849,
189     36864, 36878, 36892, 36906, 36920, 36935, 36949, 36963,
190     36977, 36991, 37005, 37020, 37034, 37048, 37062, 37076,
191     37090, 37104, 37119, 37133, 37147, 37161, 37175, 37189,
192     37203, 37217, 37231, 37246, 37260, 37274, 37288, 37302,
193     37316, 37330, 37344, 37358, 37372, 37386, 37400, 37414,
194     37428, 37442, 37456, 37470, 37484, 37498, 37512, 37526,
195     37540, 37554, 37568, 37582, 37596, 37610, 37624, 37638,
196     37652, 37665, 37679, 37693, 37707, 37721, 37735, 37749,
197     37763, 37777, 37791, 37804, 37818, 37832, 37846, 37860,
198     37874, 37888, 37901, 37915, 37929, 37943, 37957, 37970,
199     37984, 37998, 38012, 38026, 38039, 38053, 38067, 38081,
200     38095, 38108, 38122, 38136, 38150, 38163, 38177, 38191,
201     38204, 38218, 38232, 38246, 38259, 38273, 38287, 38300,
202     38314, 38328, 38341, 38355, 38369, 38382, 38396, 38410,
203     38423, 38437, 38451, 38464, 38478, 38492, 38505, 38519,
204     38532, 38546, 38560, 38573, 38587, 38600, 38614, 38628,
205     38641, 38655, 38668, 38682, 38695, 38709, 38722, 38736,
206     38749, 38763, 38777, 38790, 38804, 38817, 38831, 38844,
207     38858, 38871, 38885, 38898, 38912, 38925, 38938, 38952,
208     38965, 38979, 38992, 39006, 39019, 39033, 39046, 39059,
209     39073, 39086, 39100, 39113, 39126, 39140, 39153, 39167,
210     39180, 39193, 39207, 39220, 39234, 39247, 39260, 39274,
211     39287, 39300, 39314, 39327, 39340, 39354, 39367, 39380,
212     39394, 39407, 39420, 39433, 39447, 39460, 39473, 39487,
213     39500, 39513, 39526, 39540, 39553, 39566, 39579, 39593,
214     39606, 39619, 39632, 39646, 39659, 39672, 39685, 39698,
215     39712, 39725, 39738, 39751, 39764, 39778, 39791, 39804,
216     39817, 39830, 39843, 39857, 39870, 39883, 39896, 39909,
217     39922, 39936, 39949, 39962, 39975, 39988, 40001, 40014,
218     40027, 40040, 40053, 40067, 40080, 40093, 40106, 40119,
219     40132, 40145, 40158, 40171, 40184, 40197, 40210, 40223,
220     40236, 40249, 40262, 40275, 40288, 40301, 40314, 40327,
221     40340, 40353, 40366, 40379, 40392, 40405, 40418, 40431,
222     40444, 40457, 40470, 40483, 40496, 40509, 40522, 40535,
223     40548, 40561, 40574, 40587, 40600, 40612, 40625, 40638,
224     40651, 40664, 40677, 40690, 40703, 40716, 40728, 40741,
225     40754, 40767, 40780, 40793, 40806, 40818, 40831, 40844,
226     40857, 40870, 40883, 40895, 40908, 40921, 40934, 40947,
227     40960, 40972, 40985, 40998, 41011, 41023, 41036, 41049,
228     41062, 41075, 41087, 41100, 41113, 41126, 41138, 41151,
229     41164, 41177, 41189, 41202, 41215, 41227, 41240, 41253,
230     41266, 41278, 41291, 41304, 41316, 41329, 41342, 41354,
231     41367, 41380, 41392, 41405, 41418, 41430, 41443, 41456,
232     41468, 41481, 41494, 41506, 41519, 41532, 41544, 41557,
233     41569, 41582, 41595, 41607, 41620, 41632, 41645, 41658,
234     41670, 41683, 41695, 41708, 41720, 41733, 41746, 41758,
235     41771, 41783, 41796, 41808, 41821, 41833, 41846, 41858,
236     41871, 41883, 41896, 41909, 41921, 41934, 41946, 41959,
237     41971, 41984, 41996, 42008, 42021, 42033, 42046, 42058,
238     42071, 42083, 42096, 42108, 42121, 42133, 42146, 42158,
239     42170, 42183, 42195, 42208, 42220, 42233, 42245, 42257,
240     42270, 42282, 42295, 42307, 42319, 42332, 42344, 42356,
241     42369, 42381, 42394, 42406, 42418, 42431, 42443, 42455,
242     42468, 42480, 42492, 42505, 42517, 42529, 42542, 42554,
243     42566, 42579, 42591, 42603, 42616, 42628, 42640, 42653,
244     42665, 42677, 42689, 42702, 42714, 42726, 42738, 42751,
245     42763, 42775, 42788, 42800, 42812, 42824, 42836, 42849,
246     42861, 42873, 42885, 42898, 42910, 42922, 42934, 42947,
247     42959, 42971, 42983, 42995, 43008, 43020, 43032, 43044,
248     43056, 43068, 43081, 43093, 43105, 43117, 43129, 43141,
249     43154, 43166, 43178, 43190, 43202, 43214, 43226, 43238,
250     43251, 43263, 43275, 43287, 43299, 43311, 43323, 43335,
251     43347, 43360, 43372, 43384, 43396, 43408, 43420, 43432,
252     43444, 43456, 43468, 43480, 43492, 43504, 43516, 43529,
253     43541, 43553, 43565, 43577, 43589, 43601, 43613, 43625,
254     43637, 43649, 43661, 43673, 43685, 43697, 43709, 43721,
255     43733, 43745, 43757, 43769, 43781, 43793, 43805, 43817,
256     43829, 43841, 43853, 43864, 43876, 43888, 43900, 43912,
257     43924, 43936, 43948, 43960, 43972, 43984, 43996, 44008,
258     44020, 44032, 44043, 44055, 44067, 44079, 44091, 44103,
259     44115, 44127, 44139, 44150, 44162, 44174, 44186, 44198,
260     44210, 44222, 44233, 44245, 44257, 44269, 44281, 44293,
261     44305, 44316, 44328, 44340, 44352, 44364, 44375, 44387,
262     44399, 44411, 44423, 44434, 44446, 44458, 44470, 44482,
263     44493, 44505, 44517, 44529, 44541, 44552, 44564, 44576,
264     44588, 44599, 44611, 44623, 44635, 44646, 44658, 44670,
265     44682, 44693, 44705, 44717, 44728, 44740, 44752, 44764,
266     44775, 44787, 44799, 44810, 44822, 44834, 44846, 44857,
267     44869, 44881, 44892, 44904, 44916, 44927, 44939, 44951,
268     44962, 44974, 44986, 44997, 45009, 45021, 45032, 45044,
269     45056, 45067, 45079, 45090, 45102, 45114, 45125, 45137,
270     45148, 45160, 45172, 45183, 45195, 45207, 45218, 45230,
271     45241, 45253, 45264, 45276, 45288, 45299, 45311, 45322,
272     45334, 45345, 45357, 45369, 45380, 45392, 45403, 45415,
273     45426, 45438, 45449, 45461, 45472, 45484, 45496, 45507,
274     45519, 45530, 45542, 45553, 45565, 45576, 45588, 45599,
275     45611, 45622, 45634, 45645, 45657, 45668, 45680, 45691,
276     45702, 45714, 45725, 45737, 45748, 45760, 45771, 45783,
277     45794, 45806, 45817, 45829, 45840, 45851, 45863, 45874,
278     45886, 45897, 45909, 45920, 45931, 45943, 45954, 45966,
279     45977, 45988, 46000, 46011, 46023, 46034, 46045, 46057,
280     46068, 46080, 46091, 46102, 46114, 46125, 46136, 46148,
281     46159, 46170, 46182, 46193, 46204, 46216, 46227, 46239,
282     46250, 46261, 46273, 46284, 46295, 46306, 46318, 46329,
283     46340, 46352, 46363, 46374, 46386, 46397, 46408, 46420,
284     46431, 46442, 46453, 46465, 46476, 46487, 46499, 46510,
285     46521, 46532, 46544, 46555, 46566, 46577, 46589, 46600,
286     46611, 46622, 46634, 46645, 46656, 46667, 46679, 46690,
287     46701, 46712, 46724, 46735, 46746, 46757, 46768, 46780,
288     46791, 46802, 46813, 46824, 46836, 46847, 46858, 46869,
289     46880, 46892, 46903, 46914, 46925, 46936, 46947, 46959,
290     46970, 46981, 46992, 47003, 47014, 47026, 47037, 47048,
291     47059, 47070, 47081, 47092, 47104, 47115, 47126, 47137,
292     47148, 47159, 47170, 47181, 47192, 47204, 47215, 47226,
293     47237, 47248, 47259, 47270, 47281, 47292, 47303, 47315,
294     47326, 47337, 47348, 47359, 47370, 47381, 47392, 47403,
295     47414, 47425, 47436, 47447, 47458, 47469, 47480, 47491,
296     47503, 47514, 47525, 47536, 47547, 47558, 47569, 47580,
297     47591, 47602, 47613, 47624, 47635, 47646, 47657, 47668,
298     47679, 47690, 47701, 47712, 47723, 47734, 47745, 47756,
299     47767, 47778, 47789, 47800, 47811, 47822, 47832, 47843,
300     47854, 47865, 47876, 47887, 47898, 47909, 47920, 47931,
301     47942, 47953, 47964, 47975, 47986, 47997, 48008, 48018,
302     48029, 48040, 48051, 48062, 48073, 48084, 48095, 48106,
303     48117, 48128, 48138, 48149, 48160, 48171, 48182, 48193,
304     48204, 48215, 48225, 48236, 48247, 48258, 48269, 48280,
305     48291, 48301, 48312, 48323, 48334, 48345, 48356, 48367,
306     48377, 48388, 48399, 48410, 48421, 48432, 48442, 48453,
307     48464, 48475, 48486, 48496, 48507, 48518, 48529, 48540,
308     48550, 48561, 48572, 48583, 48594, 48604, 48615, 48626,
309     48637, 48648, 48658, 48669, 48680, 48691, 48701, 48712,
310     48723, 48734, 48744, 48755, 48766, 48777, 48787, 48798,
311     48809, 48820, 48830, 48841, 48852, 48863, 48873, 48884,
312     48895, 48906, 48916, 48927, 48938, 48948, 48959, 48970,
313     48981, 48991, 49002, 49013, 49023, 49034, 49045, 49055,
314     49066, 49077, 49087, 49098, 49109, 49119, 49130, 49141,
315     49152, 49162, 49173, 49183, 49194, 49205, 49215, 49226,
316     49237, 49247, 49258, 49269, 49279, 49290, 49301, 49311,
317     49322, 49333, 49343, 49354, 49364, 49375, 49386, 49396,
318     49407, 49417, 49428, 49439, 49449, 49460, 49470, 49481,
319     49492, 49502, 49513, 49523, 49534, 49545, 49555, 49566,
320     49576, 49587, 49597, 49608, 49619, 49629, 49640, 49650,
321     49661, 49671, 49682, 49693, 49703, 49714, 49724, 49735,
322     49745, 49756, 49766, 49777, 49787, 49798, 49808, 49819,
323     49829, 49840, 49851, 49861, 49872, 49882, 49893, 49903,
324     49914, 49924, 49935, 49945, 49956, 49966, 49977, 49987,
325     49998, 50008, 50019, 50029, 50039, 50050, 50060, 50071,
326     50081, 50092, 50102, 50113, 50123, 50134, 50144, 50155,
327     50165, 50176, 50186, 50196, 50207, 50217, 50228, 50238,
328     50249, 50259, 50269, 50280, 50290, 50301, 50311, 50322,
329     50332, 50342, 50353, 50363, 50374, 50384, 50394, 50405,
330     50415, 50426, 50436, 50446, 50457, 50467, 50478, 50488,
331     50498, 50509, 50519, 50530, 50540, 50550, 50561, 50571,
332     50581, 50592, 50602, 50612, 50623, 50633, 50644, 50654,
333     50664, 50675, 50685, 50695, 50706, 50716, 50726, 50737,
334     50747, 50757, 50768, 50778, 50788, 50799, 50809, 50819,
335     50830, 50840, 50850, 50860, 50871, 50881, 50891, 50902,
336     50912, 50922, 50933, 50943, 50953, 50963, 50974, 50984,
337     50994, 51005, 51015, 51025, 51035, 51046, 51056, 51066,
338     51076, 51087, 51097, 51107, 51118, 51128, 51138, 51148,
339     51159, 51169, 51179, 51189, 51200, 51210, 51220, 51230,
340     51240, 51251, 51261, 51271, 51281, 51292, 51302, 51312,
341     51322, 51332, 51343, 51353, 51363, 51373, 51383, 51394,
342     51404, 51414, 51424, 51434, 51445, 51455, 51465, 51475,
343     51485, 51496, 51506, 51516, 51526, 51536, 51546, 51557,
344     51567, 51577, 51587, 51597, 51607, 51618, 51628, 51638,
345     51648, 51658, 51668, 51679, 51689, 51699, 51709, 51719,
346     51729, 51739, 51750, 51760, 51770, 51780, 51790, 51800,
347     51810, 51820, 51830, 51841, 51851, 51861, 51871, 51881,
348     51891, 51901, 51911, 51921, 51932, 51942, 51952, 51962,
349     51972, 51982, 51992, 52002, 52012, 52022, 52032, 52042,
350     52053, 52063, 52073, 52083, 52093, 52103, 52113, 52123,
351     52133, 52143, 52153, 52163, 52173, 52183, 52193, 52203,
352     52213, 52224, 52234, 52244, 52254, 52264, 52274, 52284,
353     52294, 52304, 52314, 52324, 52334, 52344, 52354, 52364,
354     52374, 52384, 52394, 52404, 52414, 52424, 52434, 52444,
355     52454, 52464, 52474, 52484, 52494, 52504, 52514, 52524,
356     52534, 52544, 52554, 52564, 52574, 52584, 52594, 52604,
357     52614, 52624, 52633, 52643, 52653, 52663, 52673, 52683,
358     52693, 52703, 52713, 52723, 52733, 52743, 52753, 52763,
359     52773, 52783, 52793, 52803, 52812, 52822, 52832, 52842,
360     52852, 52862, 52872, 52882, 52892, 52902, 52912, 52922,
361     52931, 52941, 52951, 52961, 52971, 52981, 52991, 53001,
362     53011, 53021, 53030, 53040, 53050, 53060, 53070, 53080,
363     53090, 53100, 53109, 53119, 53129, 53139, 53149, 53159,
364     53169, 53179, 53188, 53198, 53208, 53218, 53228, 53238,
365     53248, 53257, 53267, 53277, 53287, 53297, 53307, 53316,
366     53326, 53336, 53346, 53356, 53366, 53375, 53385, 53395,
367     53405, 53415, 53424, 53434, 53444, 53454, 53464, 53473,
368     53483, 53493, 53503, 53513, 53522, 53532, 53542, 53552,
369     53562, 53571, 53581, 53591, 53601, 53611, 53620, 53630,
370     53640, 53650, 53659, 53669, 53679, 53689, 53699, 53708,
371     53718, 53728, 53738, 53747, 53757, 53767, 53777, 53786,
372     53796, 53806, 53816, 53825, 53835, 53845, 53855, 53864,
373     53874, 53884, 53893, 53903, 53913, 53923, 53932, 53942,
374     53952, 53961, 53971, 53981, 53991, 54000, 54010, 54020,
375     54029, 54039, 54049, 54059, 54068, 54078, 54088, 54097,
376     54107, 54117, 54126, 54136, 54146, 54155, 54165, 54175,
377     54184, 54194, 54204, 54214, 54223, 54233, 54243, 54252,
378     54262, 54272, 54281, 54291, 54300, 54310, 54320, 54329,
379     54339, 54349, 54358, 54368, 54378, 54387, 54397, 54407,
380     54416, 54426, 54435, 54445, 54455, 54464, 54474, 54484,
381     54493, 54503, 54512, 54522, 54532, 54541, 54551, 54561,
382     54570, 54580, 54589, 54599, 54609, 54618, 54628, 54637,
383     54647, 54657, 54666, 54676, 54685, 54695, 54704, 54714,
384     54724, 54733, 54743, 54752, 54762, 54772, 54781, 54791,
385     54800, 54810, 54819, 54829, 54839, 54848, 54858, 54867,
386     54877, 54886, 54896, 54905, 54915, 54924, 54934, 54944,
387     54953, 54963, 54972, 54982, 54991, 55001, 55010, 55020,
388     55029, 55039, 55048, 55058, 55067, 55077, 55087, 55096,
389     55106, 55115, 55125, 55134, 55144, 55153, 55163, 55172,
390     55182, 55191, 55201, 55210, 55220, 55229, 55239, 55248,
391     55258, 55267, 55277, 55286, 55296, 55305, 55314, 55324,
392     55333, 55343, 55352, 55362, 55371, 55381, 55390, 55400,
393     55409, 55419, 55428, 55438, 55447, 55456, 55466, 55475,
394     55485, 55494, 55504, 55513, 55523, 55532, 55541, 55551,
395     55560, 55570, 55579, 55589, 55598, 55608, 55617, 55626,
396     55636, 55645, 55655, 55664, 55673, 55683, 55692, 55702,
397     55711, 55721, 55730, 55739, 55749, 55758, 55768, 55777,
398     55786, 55796, 55805, 55815, 55824, 55833, 55843, 55852,
399     55861, 55871, 55880, 55890, 55899, 55908, 55918, 55927,
400     55937, 55946, 55955, 55965, 55974, 55983, 55993, 56002,
401     56011, 56021, 56030, 56040, 56049, 56058, 56068, 56077,
402     56086, 56096, 56105, 56114, 56124, 56133, 56142, 56152,
403     56161, 56170, 56180, 56189, 56198, 56208, 56217, 56226,
404     56236, 56245, 56254, 56264, 56273, 56282, 56292, 56301,
405     56310, 56320, 56329, 56338, 56347, 56357, 56366, 56375,
406     56385, 56394, 56403, 56413, 56422, 56431, 56440, 56450,
407     56459, 56468, 56478, 56487, 56496, 56505, 56515, 56524,
408     56533, 56542, 56552, 56561, 56570, 56580, 56589, 56598,
409     56607, 56617, 56626, 56635, 56644, 56654, 56663, 56672,
410     56681, 56691, 56700, 56709, 56718, 56728, 56737, 56746,
411     56755, 56765, 56774, 56783, 56792, 56802, 56811, 56820,
412     56829, 56838, 56848, 56857, 56866, 56875, 56885, 56894,
413     56903, 56912, 56921, 56931, 56940, 56949, 56958, 56967,
414     56977, 56986, 56995, 57004, 57013, 57023, 57032, 57041,
415     57050, 57059, 57069, 57078, 57087, 57096, 57105, 57114,
416     57124, 57133, 57142, 57151, 57160, 57170, 57179, 57188,
417     57197, 57206, 57215, 57225, 57234, 57243, 57252, 57261,
418     57270, 57279, 57289, 57298, 57307, 57316, 57325, 57334,
419     57344, 57353, 57362, 57371, 57380, 57389, 57398, 57407,
420     57417, 57426, 57435, 57444, 57453, 57462, 57471, 57480,
421     57490, 57499, 57508, 57517, 57526, 57535, 57544, 57553,
422     57563, 57572, 57581, 57590, 57599, 57608, 57617, 57626,
423     57635, 57644, 57654, 57663, 57672, 57681, 57690, 57699,
424     57708, 57717, 57726, 57735, 57744, 57753, 57763, 57772,
425     57781, 57790, 57799, 57808, 57817, 57826, 57835, 57844,
426     57853, 57862, 57871, 57880, 57889, 57899, 57908, 57917,
427     57926, 57935, 57944, 57953, 57962, 57971, 57980, 57989,
428     57998, 58007, 58016, 58025, 58034, 58043, 58052, 58061,
429     58070, 58079, 58088, 58097, 58106, 58115, 58124, 58133,
430     58143, 58152, 58161, 58170, 58179, 58188, 58197, 58206,
431     58215, 58224, 58233, 58242, 58251, 58260, 58269, 58278,
432     58287, 58296, 58305, 58314, 58323, 58332, 58341, 58350,
433     58359, 58368, 58376, 58385, 58394, 58403, 58412, 58421,
434     58430, 58439, 58448, 58457, 58466, 58475, 58484, 58493,
435     58502, 58511, 58520, 58529, 58538, 58547, 58556, 58565,
436     58574, 58583, 58592, 58601, 58610, 58618, 58627, 58636,
437     58645, 58654, 58663, 58672, 58681, 58690, 58699, 58708,
438     58717, 58726, 58735, 58744, 58752, 58761, 58770, 58779,
439     58788, 58797, 58806, 58815, 58824, 58833, 58842, 58851,
440     58859, 58868, 58877, 58886, 58895, 58904, 58913, 58922,
441     58931, 58940, 58948, 58957, 58966, 58975, 58984, 58993,
442     59002, 59011, 59020, 59028, 59037, 59046, 59055, 59064,
443     59073, 59082, 59091, 59099, 59108, 59117, 59126, 59135,
444     59144, 59153, 59162, 59170, 59179, 59188, 59197, 59206,
445     59215, 59224, 59232, 59241, 59250, 59259, 59268, 59277,
446     59285, 59294, 59303, 59312, 59321, 59330, 59339, 59347,
447     59356, 59365, 59374, 59383, 59392, 59400, 59409, 59418,
448     59427, 59436, 59444, 59453, 59462, 59471, 59480, 59489,
449     59497, 59506, 59515, 59524, 59533, 59541, 59550, 59559,
450     59568, 59577, 59585, 59594, 59603, 59612, 59621, 59629,
451     59638, 59647, 59656, 59665, 59673, 59682, 59691, 59700,
452     59708, 59717, 59726, 59735, 59744, 59752, 59761, 59770,
453     59779, 59787, 59796, 59805, 59814, 59822, 59831, 59840,
454     59849, 59858, 59866, 59875, 59884, 59893, 59901, 59910,
455     59919, 59928, 59936, 59945, 59954, 59963, 59971, 59980,
456     59989, 59998, 60006, 60015, 60024, 60032, 60041, 60050,
457     60059, 60067, 60076, 60085, 60094, 60102, 60111, 60120,
458     60128, 60137, 60146, 60155, 60163, 60172, 60181, 60189,
459     60198, 60207, 60216, 60224, 60233, 60242, 60250, 60259,
460     60268, 60276, 60285, 60294, 60303, 60311, 60320, 60329,
461     60337, 60346, 60355, 60363, 60372, 60381, 60389, 60398,
462     60407, 60416, 60424, 60433, 60442, 60450, 60459, 60468,
463     60476, 60485, 60494, 60502, 60511, 60520, 60528, 60537,
464     60546, 60554, 60563, 60572, 60580, 60589, 60597, 60606,
465     60615, 60623, 60632, 60641, 60649, 60658, 60667, 60675,
466     60684, 60693, 60701, 60710, 60718, 60727, 60736, 60744,
467     60753, 60762, 60770, 60779, 60788, 60796, 60805, 60813,
468     60822, 60831, 60839, 60848, 60856, 60865, 60874, 60882,
469     60891, 60900, 60908, 60917, 60925, 60934, 60943, 60951,
470     60960, 60968, 60977, 60986, 60994, 61003, 61011, 61020,
471     61029, 61037, 61046, 61054, 61063, 61071, 61080, 61089,
472     61097, 61106, 61114, 61123, 61132, 61140, 61149, 61157,
473     61166, 61174, 61183, 61192, 61200, 61209, 61217, 61226,
474     61234, 61243, 61251, 61260, 61269, 61277, 61286, 61294,
475     61303, 61311, 61320, 61328, 61337, 61346, 61354, 61363,
476     61371, 61380, 61388, 61397, 61405, 61414, 61422, 61431,
477     61440, 61448, 61457, 61465, 61474, 61482, 61491, 61499,
478     61508, 61516, 61525, 61533, 61542, 61550, 61559, 61567,
479     61576, 61584, 61593, 61601, 61610, 61618, 61627, 61635,
480     61644, 61652, 61661, 61669, 61678, 61686, 61695, 61703,
481     61712, 61720, 61729, 61737, 61746, 61754, 61763, 61771,
482     61780, 61788, 61797, 61805, 61814, 61822, 61831, 61839,
483     61848, 61856, 61865, 61873, 61882, 61890, 61899, 61907,
484     61916, 61924, 61932, 61941, 61949, 61958, 61966, 61975,
485     61983, 61992, 62000, 62009, 62017, 62026, 62034, 62042,
486     62051, 62059, 62068, 62076, 62085, 62093, 62102, 62110,
487     62118, 62127, 62135, 62144, 62152, 62161, 62169, 62177,
488     62186, 62194, 62203, 62211, 62220, 62228, 62236, 62245,
489     62253, 62262, 62270, 62279, 62287, 62295, 62304, 62312,
490     62321, 62329, 62337, 62346, 62354, 62363, 62371, 62380,
491     62388, 62396, 62405, 62413, 62422, 62430, 62438, 62447,
492     62455, 62464, 62472, 62480, 62489, 62497, 62505, 62514,
493     62522, 62531, 62539, 62547, 62556, 62564, 62573, 62581,
494     62589, 62598, 62606, 62614, 62623, 62631, 62640, 62648,
495     62656, 62665, 62673, 62681, 62690, 62698, 62706, 62715,
496     62723, 62732, 62740, 62748, 62757, 62765, 62773, 62782,
497     62790, 62798, 62807, 62815, 62823, 62832, 62840, 62848,
498     62857, 62865, 62873, 62882, 62890, 62898, 62907, 62915,
499     62923, 62932, 62940, 62948, 62957, 62965, 62973, 62982,
500     62990, 62998, 63007, 63015, 63023, 63032, 63040, 63048,
501     63057, 63065, 63073, 63082, 63090, 63098, 63106, 63115,
502     63123, 63131, 63140, 63148, 63156, 63165, 63173, 63181,
503     63190, 63198, 63206, 63214, 63223, 63231, 63239, 63248,
504     63256, 63264, 63272, 63281, 63289, 63297, 63306, 63314,
505     63322, 63330, 63339, 63347, 63355, 63364, 63372, 63380,
506     63388, 63397, 63405, 63413, 63421, 63430, 63438, 63446,
507     63454, 63463, 63471, 63479, 63488, 63496, 63504, 63512,
508     63521, 63529, 63537, 63545, 63554, 63562, 63570, 63578,
509     63587, 63595, 63603, 63611, 63619, 63628, 63636, 63644,
510     63652, 63661, 63669, 63677, 63685, 63694, 63702, 63710,
511     63718, 63727, 63735, 63743, 63751, 63759, 63768, 63776,
512     63784, 63792, 63801, 63809, 63817, 63825, 63833, 63842,
513     63850, 63858, 63866, 63874, 63883, 63891, 63899, 63907,
514     63915, 63924, 63932, 63940, 63948, 63956, 63965, 63973,
515     63981, 63989, 63997, 64006, 64014, 64022, 64030, 64038,
516     64047, 64055, 64063, 64071, 64079, 64088, 64096, 64104,
517     64112, 64120, 64128, 64137, 64145, 64153, 64161, 64169,
518     64177, 64186, 64194, 64202, 64210, 64218, 64226, 64235,
519     64243, 64251, 64259, 64267, 64275, 64284, 64292, 64300,
520     64308, 64316, 64324, 64332, 64341, 64349, 64357, 64365,
521     64373, 64381, 64389, 64398, 64406, 64414, 64422, 64430,
522     64438, 64446, 64455, 64463, 64471, 64479, 64487, 64495,
523     64503, 64512, 64520, 64528, 64536, 64544, 64552, 64560,
524     64568, 64576, 64585, 64593, 64601, 64609, 64617, 64625,
525     64633, 64641, 64650, 64658, 64666, 64674, 64682, 64690,
526     64698, 64706, 64714, 64722, 64731, 64739, 64747, 64755,
527     64763, 64771, 64779, 64787, 64795, 64803, 64812, 64820,
528     64828, 64836, 64844, 64852, 64860, 64868, 64876, 64884,
529     64892, 64900, 64909, 64917, 64925, 64933, 64941, 64949,
530     64957, 64965, 64973, 64981, 64989, 64997, 65005, 65013,
531     65021, 65030, 65038, 65046, 65054, 65062, 65070, 65078,
532     65086, 65094, 65102, 65110, 65118, 65126, 65134, 65142,
533     65150, 65158, 65166, 65175, 65183, 65191, 65199, 65207,
534     65215, 65223, 65231, 65239, 65247, 65255, 65263, 65271,
535     65279, 65287, 65295, 65303, 65311, 65319, 65327, 65335,
536     65343, 65351, 65359, 65367, 65375, 65383, 65391, 65399,
537     65407, 65415, 65423, 65431, 65439, 65447, 65455, 65463,
538     65471, 65479, 65487, 65495, 65503, 65511, 65519, 65527
539 };
540
541 static const signed short wavtable1[2304]={
542      541,   956,   768, -1011,  -811,  -717,  -571,  -893,  -576,
543      877,   581,   568,  -997,  -975,  -646,  -752,  -661,  -632,
544      675,   787,   635,  -519,  -838,  -977,  -890,  -605,  -789,
545      624,   732,   668,  -893,  -815,  -956,  -762,  -523,  -873,
546      623,   839,   697, -1022,  -849,  -571,  -759,  -688,  -949,
547      640,   693,   991,  -867,  -619,  -671,  -800,  -940,  -959,
548      925,   687,   608,  -621,  -549,  -817,  -837,  -924,  -722,
549      552,   797,   572,  -861,  -617,  -892,  -596,  -621,  -640,
550      535,   832,   799,  -871,  -836,  -649,  -560,  -676,  -624,
551      762,   605,   577,  -902,  -859,  -682,  -568,  -716,  -650,
552      832,   561,  1003,  -913,  -815,  -550,  -676,  -616,  -982,
553      590,   687,   588,  -793,  -679,  -790,  -681,  -923,  -677,
554      646,   901,   732,  -569,  -924,  -645,  -816,  -794,  -524,
555      828,   689,   896,  -557,  -725,  -603,  -670,  -927,  -784,
556      875,   624,   848,  -533,  -725,  -516,  -748,  -760,  -702,
557      571,   942,  1022,  -526,  -570,  -941,  -638,  -868, -1020,
558      824,   736,   643,  -593,  -517,  -925,  -663,  -530,  -808,
559      517,   765,   512,  -774,  -518,  -767,  -523,  -572,  -513,
560      562,   908,   761,  -997,  -836,  -675,  -617,  -805,  -566,
561      694,   913,   675,  -619,  -916,  -603,  -941,  -815,  -891,
562      704,   524,   672,  -722,  -925,  -689,  -969,  -538,  -883,
563      721,   757,   558,  -534,  -786,  -826, -1018,  -561,  -608,
564      884,   551,   633,  -951,  -546,  -681,  -763,  -592,  -784,
565      558,  1007,   846,  -549,  -923,  -832,  -608,  -991,  -699,
566      932,   746,   777,  -679,  -707,  -566,  -849,  -544,  -589,
567      566,   822,   926,  -910,  -513,  -744,  -627,  -659,  -839,
568      613,   771,   611,  -924,  -731,  -921,  -733,  -581,  -729,
569      737,   671,  1008,  -967,  -726,  -661,  -531,  -880,  -993,
570      651,   594,   579,  -757,  -737,  -673,  -830,  -691,  -655,
571      801,   636,   564,  -996,  -883,  -702,  -626,  -792,  -622,
572      852,   910,   719,  -757,  -599,  -639,  -709,  -809, -1012,
573      998,   614,   575,  -599,  -561,  -691,  -974,  -737,  -647,
574      665,   935,   628,  -607,  -816,  -574,  -863,  -854,  -771,
575      631,   596,   829,  -735, -1023,  -966,  -778,  -694,  -672,
576      644,   926,   526,  -583,  -663,  -953,  -811,  -838,  -542,
577      879,   988,   613,  -848,  -526,  -592,  -755,  -953,  -734,
578      941,   692,   693,  -637,  -638,  -939,  -866,  -937,  -940,
579      565,   672,   576,  -742,  -637,  -757,  -625,  -882,  -649,
580      547,   628,   740,  -671,  -791,  -909,  -585,  -771,  -535,
581      639,   532,   537,  -665,  -671,  -559,  -798,  -554,  -564,
582      955,   604,   598,  -564,  -558,  -706,  -891,  -714,  -699,
583      562,   580,   900,  -637,  -989, -1021,  -617,  -658,  -791,
584      603,   899,   621,  -530,  -733,  -545,  -712,  -789,  -755,
585      746,   533,   624,  -776,  -909,  -650,  -543,  -555,  -761,
586      729,   514,   735,  -733,  -523,  -739,  -519,  -517,  -528,
587      853,   551,   692,  -919,  -577,  -745,  -711,  -593,  -936,
588      949,  1018,  1004,  -944,  -931,  -999,  -880, -1013,  -985,
589      544,   988,   735,  -525,  -781,  -710,  -578,  -954,  -528,
590      789,   782,   821,  -603,  -633,  -628,  -608,  -598,  -659,
591      897,   516,   754,  -906,  -661,  -761,  -786,  -521,  -556,
592      517,   702,   828,  -710,  -837,  -568,  -523,  -963,  -670,
593      586,   818,   763,  -937,  -874,  -609,  -672,  -654,  -568,
594      907,   652,   592,  -578,  -525,  -754,  -804,  -830,  -686,
595      528,   652,   642,  -673,  -663,  -818,  -546,  -830,  -806,
596      531,   708,   780,  -736,  -811,  -540,  -552,  -981,  -595,
597      666,   625,   727,  -813,  -946,  -888,  -867,  -763,  -516,
598      947,   727,   554,  -673,  -512,  -787,  -875,  -517,  -599,
599      549,   657,   981,  -705,  -526,  -630,  -589,  -843,  -941,
600      605,   920,   852,  -544, -1008,  -766,  -716,  -827,  -709,
601      624,   619,   983,  -755,  -599,  -595,  -761,  -750,  -944,
602      605,   909,   547,  -537,  -646,  -971,  -715,  -807,  -584,
603      690,   935,   516,  -631,  -697,  -944,  -932,  -855,  -521,
604      700,   612,   853,  -838,  -584, -1021,  -959,  -732,  -711,
605      767,   832,   574,  -623,  -861,  -933,  -575,  -676,  -643,
606      523,   898,   923,  -919,  -945,  -810,  -536,  -789,  -833,
607      722,   958,   691,  -676,  -976,  -647, -1020,  -896,  -935,
608      613,   771,   928,  -924,  -556,  -700,  -734,  -581,  -842,
609      758,   757,   584,  -561,  -866,  -865,  -562,  -560,  -667,
610      512,   567,   577,  -567,  -577,  -639,  -512,  -628,  -650,
611      615,   638,   698,  -766,  -839,  -871,  -739,  -795,  -954,
612      574,   642,   589,  -720,  -660,  -739,  -644,  -806,  -677,
613      993,   682,   878,  -662,  -852,  -585,  -963,  -910,  -753,
614      539,   890,   913,  -939,  -963,  -795,  -569,  -775,  -815,
615      694,   928,   544,  -629,  -738,  -987,  -941,  -842,  -578,
616      805,   600,   680,  -944,  -535,  -798,  -633,  -704,  -905,
617      540,   951,   782, -1004,  -825,  -727,  -570,  -884,  -597,
618      816,   950,   590,  -757,  -941,  -548,  -650,  -881,  -681,
619      955,   847,   811,  -790,  -757,  -671,  -891,  -700,  -643,
620      547,   883,   556,  -945,  -595,  -960,  -586,  -762,  -605,
621      652,   888,   604,  -565,  -770,  -524,  -831,  -770,  -713,
622      863,   585,   855,  -986,  -721,  -978,  -727,  -668,  -715,
623     1023,   997,   516,  -997,  -516, -1006, -1023,  -972,  -520,
624      932,   614,   640,  -560,  -583,  -769,  -850,  -738,  -800,
625      627,   564,   573,  -691,  -702,  -631,  -769,  -621,  -641,
626      876,   900,   724,  -770,  -620,  -637,  -750,  -792,  -512,
627      515,   857,   896,  -863,  -902,  -750,  -519,  -718,  -784,
628      647,   953,   879,  -602,  -555,  -818,  -817,  -888,  -755,
629      806,   854,   857,  -672,  -675,  -715,  -634,  -712,  -718,
630      545,   583,   631,  -621,  -672,  -719,  -581,  -664,  -778,
631      657,   601,   751,  -772,  -963,  -882,  -843,  -707,  -550,
632      740,   905,   795,  -654,  -575,  -704,  -535,  -801,  -618,
633      841,  1016,   568,  -835,  -934,  -564,  -691, -1009,  -631,
634      747,   589,   983,  -861,  -718,  -566,  -545,  -679,  -945,
635      878,   613,   526,  -526,  -902,  -630,  -753,  -736,  -540,
636      864,   723,   779,  -610,  -657,  -550,  -729, -1022,  -592,
637      534,   674,   774,  -703,  -808, -1019,  -557,  -887,  -586,
638      950,   649,   939,  -602,  -871,  -595,  -881,  -824,  -861,
639      590,   703,   899,  -811,  -518,  -618,  -680,  -966,  -790,
640      618,   527,   579,  -637,  -700,  -597,  -746,  -543,  -657,
641      725,   647,   972,  -917,  -689,  -615,  -513,  -818,  -924,
642      641,   647,   707,  -810,  -885,  -893,  -803,  -817,  -976,
643      730,   663,   644,  -946,  -920,  -835,  -521,  -860,  -812,
644      807,   572,   578,  -902,  -912,  -646,  -637,  -639,  -653,
645      879,   611,   821,  -524,  -705,  -979,  -755,  -729,  -658,
646      667,   729,   841,  -951,  -549,  -599,  -871,  -519,  -692,
647      782,   585,   751,  -895,  -574,  -859,  -598,  -670,  -551,
648      802,   733,   976,  -574,  -765,  -699,  -628,  -525,  -931,
649      850,   871,   708,  -724,  -588,  -602,  -706,  -742,  -979,
650      870,   743,   704,  -632,  -598, -1023,  -739,  -540,  -970,
651      941,   899,   585,  -827,  -538,  -514,  -866,  -790,  -669,
652      943,   632,   875,  -582,  -806,  -541,  -869,  -781,  -749,
653     1023,   732,   638,  -731,  -637,  -912, -1022,  -523,  -795,
654      778,   753,   655,  -573,  -997,  -965,  -592,  -554,  -839,
655      843,   945,   945,  -779,  -779,  -873,  -694,  -873,  -873,
656      942,   969,   572,  -892,  -527,  -542,  -867,  -918,  -640,
657     1008,   559,   854,  -551,  -841,  -934,  -993,  -612,  -712,
658      868,   729,   787,  -618,  -668,  -560,  -737,  -519,  -605,
659      970,   686,   547,  -650,  -518,  -733,  -919,  -919,  -585,
660      535,   635,   674,  -664,  -705,  -836,  -560,  -788,  -887,
661      560,   636,   828,  -696,  -907,  -514,  -613,  -790,  -670,
662      994,   592,   833,  -575,  -809,  -964,  -966,  -686,  -677,
663      548,   621,   694,  -665,  -743,  -843,  -587,  -755,  -942,
664      550,   801,   955,  -861,  -513,  -748,  -591,  -627,  -892,
665      582,   522,   646,  -594,  -735,  -659,  -663,  -533,  -815,
666      606,   625,   818,  -739,  -969,  -999,  -717,  -763,  -655,
667      623,   591,   874,  -720,  -531, -1010,  -758,  -683,  -746,
668      669,   535,  1001,  -700,  -654,  -523,  -876,  -559,  -979,
669      701,   938,   592,  -642,  -810,  -542,  -960,  -860,  -684,
670      925,   820,   738,  -741,  -667,  -592,  -835,  -657,  -533,
671      735,   790,   544,  -567,  -781,  -840,  -527,  -610,  -578,
672      575,   788,   674,  -886,  -758,  -519,  -647,  -607,  -888,
673      655,   783,   528, -1003,  -677,  -809,  -840,  -599,  -545,
674      527,   513,   677,  -529,  -699,  -679,  -544,  -514,  -897,
675      782,   852,   940,  -651,  -718,  -783,  -597,  -709,  -863,
676      578,   910,   513,  -514,  -581,  -914,  -654,  -809,  -515,
677      692,   882,   734,  -596,  -993,  -632,  -937,  -759,  -526,
678      586,   683,   715,  -782,  -818,  -954,  -670,  -911,  -999,
679      739,   609,   717,  -880,  -518,  -854,  -534,  -725, -1006,
680      778,   773,   697,  -588,  -530,  -527,  -592,  -584,  -951,
681      922,   785,   813,  -707,  -732,  -624,  -830,  -602,  -646,
682      766,   651,   984,  -974,  -736,  -626,  -573,  -827,  -946,
683      978,   596,   515,  -569,  -984,  -600,  -934,  -694,  -518,
684      535,   757,   540,  -792,  -565,  -799,  -560,  -559,  -571,
685      662,   687,   589,  -890,  -762,  -791,  -857,  -924,  -678,
686      554,   536,   979,  -580,  -530,  -512,  -601,  -561,  -936,
687      723,   982,   690,  -694,  -976,  -662, -1022,  -943,  -932,
688      936,   956,   527,  -875,  -965,  -986,  -856,  -894,  -543,
689      590,  1002,   547,  -577,  -631,  -536,  -680,  -980,  -586,
690      517,   653,   825,  -660,  -833,  -526,  -522,  -834,  -664,
691      832,   592,   974,  -964,  -792,  -564,  -677,  -686,  -928,
692      512,   957,   903,  -957,  -903,  -844,  -512,  -894,  -796,
693      631,   545,   906,  -672,  -558,  -965,  -777,  -581,  -802,
694      514,   720,   649,  -723,  -652,  -913,  -516, -1012,  -824,
695      596,   679,   694,  -790,  -807,  -920,  -693,  -900,  -940,
696      617,   740,   979,  -892,  -590,  -708,  -743,  -535,  -936,
697      711,   685,   877,  -952,  -609,  -587,  -987,  -917,  -752,
698      655,   835,   848,  -534,  -542,  -691,  -838,  -681,  -702,
699      754,   839,   698,  -618,  -515,  -573,  -556,  -688,  -954,
700      871,   515,   769,  -877,  -655,  -774,  -742,  -518,  -578,
701      955,   852,   573,  -795,  -535,  -955,  -892,  -709,  -643,
702      640,   859,   587,  -537,  -735,  -986,  -801,  -721,  -674,
703      792,   863,   554,  -667,  -858,  -935,  -612,  -727,  -601,
704      843,   708,   682,  -583,  -562,  -944,  -694,  -979,  -910,
705      971,   768,   552,  -728,  -524,  -829,  -921,  -576,  -596,
706      891,   536,   690,  -935,  -601,  -724,  -776,  -563,  -931,
707     1016,   560,   663,  -556,  -659,  -727, -1009,  -614,  -860,
708      543,   870,   674,  -924,  -716,  -573,  -577,  -739,  -889,
709      601,   999,   585,  -586,  -686,  -571,  -705,  -975,  -668,
710      945,   966,   889,  -892,  -821,  -840,  -872,  -912,  -773,
711      529,   912,   777,  -943,  -804,  -692,  -547,  -812,  -590,
712      574,  1020,   714,  -572,  -801,  -711,  -643, -1016,  -997,
713      609,   922,   932,  -549,  -555,  -840,  -725,  -831,  -848,
714      598,   778,   929,  -909,  -543,  -707,  -698,  -592,  -844,
715      651,   772,   744,  -982,  -947,  -561,  -827,  -582,  -541,
716      691,   957,   722,  -646,  -976,  -675,  -934,  -894, -1020,
717      729,   766,   984,  -546,  -701,  -736,  -520,  -573,  -945,
718      547,   519,   632,  -555,  -675,  -640,  -585,  -526,  -780,
719      583,   532,   922,  -607,  -525,  -960,  -664,  -554,  -831,
720      633,   995,   603,  -615,  -745,  -586,  -783,  -968,  -710,
721      677,   571,   874,  -757,  -578,  -977,  -896,  -638,  -747,
722      602,   545,   666,  -641,  -783,  -709,  -708,  -580,  -866,
723      627,   542,   875,  -665,  -536,  -928,  -769,  -575,  -748,
724      672,   983,   598,  -645,  -786,  -575,  -882,  -944,  -700,
725      692,   979,   730,  -662,  -988,  -698,  -937,  -937,  -521,
726      668,   634,   872,  -827,  -569,  -540,  -871,  -785,  -742,
727      711,   706,   674,  -982,  -937,  -931,  -988,  -975,  -889,
728      739,   977,   595,  -706,  -860,  -568,  -534,  -932,  -691,
729      759,   905,   763,  -671,  -566,  -675,  -563,  -799,  -569,
730      756,   582,   763,  -860,  -563,  -868,  -558,  -663,  -568,
731      748,  1013,   908,  -741,  -664,  -898,  -547, -1002,  -805,
732      804,   937,   950,  -736,  -746,  -869,  -631,  -858,  -882,
733      785,   543,   998,  -833,  -766,  -529,  -602,  -576,  -973,
734      999,   684,   942,  -668,  -920,  -630,  -975,  -915,  -868,
735      626,   633,   996,  -774,  -609,  -616,  -765,  -783,  -970,
736      626,   567,   835,  -693, -1021,  -925,  -765,  -628,  -681,
737      739,   571,   973,  -825,  -702,  -543,  -533,  -637,  -925,
738      655,   769,   707,  -984,  -906,  -531,  -839,  -577,  -978,
739      702,   952,   571,  -653,  -785,  -532,  -964,  -886,  -638,
740      727,   712,   514, -1012,  -730,  -715,  -516,  -990,  -516,
741      744,   686,   741,  -998,  -539,  -994,  -541,  -921,  -536,
742      731,   552,   714,  -789, -1021,  -772,  -522,  -596,  -998,
743      824,   991,   726,  -798,  -585,  -703,  -664,  -959,  -515,
744      795,   615,   544,  -955,  -844,  -653,  -617,  -738,  -578,
745      870,   575,   824,  -978,  -700,  -926,  -739,  -646,  -664,
746      803,   832,   923,  -653,  -724,  -750,  -630,  -677,  -832,
747      819,   839,   531,  -671,  -849,  -871,  -655,  -688,  -550,
748      887,   786,   852,  -681,  -738,  -654,  -769,  -603,  -709,
749      933,   764,   570,  -696,  -519,  -851,  -850,  -570,  -634,
750      716,   906,   654,  -634,  -916,  -579, -1003,  -802,  -837,
751      784,   804,   563,  -616,  -864,  -885,  -601,  -631,  -620,
752      774,   535,   876,  -809,  -662,  -915,  -585,  -559,  -749,
753      807,   598,   649,  -943, -1023,  -758,  -636,  -699,  -822,
754      817,   759,   718,  -606,  -573,  -533,  -652,  -563, -1008,
755      831,   993,   846,  -806,  -687,  -821,  -675,  -963,  -699,
756      858,   567,   605,  -951, -1015,  -670,  -720,  -628,  -716,
757      876,  1012,   651,  -866,  -557,  -643,  -750, -1001,  -827,
758      852,   548,   549,  -913,  -914,  -588,  -710,  -587,  -589,
759      895,  1008,   871,  -881,  -761,  -858,  -782,  -993,  -741,
760      892,  1000,   591,  -872,  -515,  -578,  -777,  -977,  -683,
761      935,   516,   836,  -944,  -764,  -844,  -855,  -521,  -682,
762      931,   612,   776,  -557,  -706,  -929,  -847,  -733,  -589,
763      968,   614,   816,  -581,  -771,  -980,  -915,  -738,  -651,
764      524,   777,   719,  -796,  -737,  -546,  -537,  -590, -1012,
765      549,   694,   786,  -744,  -843,  -533,  -589,  -941,  -603,
766      882,   754,   534,  -649,  -920,  -787,  -759,  -555,  -557,
767      597,   837,   766,  -977,  -895,  -627,  -697,  -684,  -574,
768      635,   954,   704,  -592,  -873,  -656,  -788,  -890,  -969,
769      803,   550,   798,  -863,  -626,  -858,  -630,  -591,  -622,
770      699,   654,   798,  -894,  -545, -1021,  -954,  -837,  -622,
771      924,   767,   738,  -693,  -666,  -553,  -834,  -575,  -531,
772      970,   675,   608,  -639,  -576,  -801,  -919,  -890,  -722,
773      632,   706,   684,  -873,  -844,  -944,  -780,  -976,  -914,
774      858,   767,   563,  -643,  -945,  -844,  -719,  -574,  -620,
775      527,   765,   702,  -788,  -724,  -525,  -543,  -572,  -964,
776      559,   924,  1003, -1009,  -547,  -905,  -610,  -833,  -983,
777      618,   524,   611,  -633,  -738,  -625,  -747,  -536,  -729,
778      999,   942,   963,  -920,  -940,  -886,  -976,  -867,  -905,
779      547,   857,   935,  -916,  -999,  -783,  -584,  -718,  -854,
780      734,   926,   569,  -665,  -818,  -515,  -527,  -838,  -634,
781      967,   746,   551,  -705,  -520,  -804,  -913,  -544,  -593,
782      834,   633,   881,  -515,  -718,  -545,  -679,  -783,  -758,
783      941,   701,   727,  -645,  -668,  -997,  -865,  -961,  -516,
784      945,   564,   636,  -521,  -587,  -701,  -873,  -623,  -790,
785      512,   563,   793,  -563,  -794,  -873,  -512,  -619,  -615,
786      984,   556,   570,  -534,  -548,  -620,  -945,  -604,  -636,
787      984,   540,   740,  -519,  -712,  -782,  -946,  -570,  -536,
788      527,   764,   874,  -787,  -901,  -652,  -543,  -570,  -747,
789      530,   664,  1014,  -688,  -525,  -658,  -549,  -862, -1005,
790      546,   515,   521,  -550,  -556,  -525,  -584,  -519,  -531,
791      554,   934,   672, -1011,  -728,  -613,  -600,  -852,  -882,
792      598,   945,   556,  -552,  -650,  -513,  -700,  -872,  -603,
793      627,   531,   733,  -651,  -899,  -760,  -769,  -551,  -525,
794      576,  1020,  1014,  -574,  -571, -1011,  -650, -1016, -1005,
795      623,   924,   594,  -563,  -724,  -537,  -759,  -835,  -691,
796      678,   909,   603,  -602,  -800,  -536,  -899,  -807,  -712,
797      814,   744,   543,  -592,  -865,  -790,  -648,  -541,  -577
798 };
799
800 static const unsigned short wavtable2[2304]={
801     14,  14,  14,  20,  20,  19,  21,  20,  20,
802     14,  14,  14,  20,  20,  20,  20,  21,  21,
803     14,  13,  14,  18,  20,  19,  21,  18,  21,
804     13,  13,  14,  18,  19,  19,  19,  18,  21,
805     13,  14,  13,  19,  18,  18,  19,  20,  19,
806     13,  14,  15,  19,  19,  20,  19,  21,  22,
807     13,  13,  13,  17,  17,  18,  18,  19,  19,
808     12,  14,  13,  18,  17,  19,  17,  20,  19,
809     13,  13,  13,  18,  18,  17,  19,  18,  18,
810     13,  13,  12,  18,  17,  17,  18,  19,  17,
811     13,  12,  13,  17,  17,  16,  18,  17,  18,
812     12,  13,  12,  17,  16,  17,  17,  19,  17,
813     12,  13,  13,  16,  17,  17,  17,  18,  18,
814     12,  13,  13,  16,  16,  17,  16,  19,  18,
815     12,  12,  13,  15,  16,  16,  16,  17,  18,
816     11,  13,  13,  15,  15,  17,  15,  18,  18,
817     13,  12,  13,  16,  17,  17,  18,  16,  19,
818     12,  12,  12,  16,  16,  16,  17,  16,  17,
819     13,  12,  12,  17,  17,  15,  19,  16,  16,
820     13,  12,  11,  16,  16,  14,  19,  16,  15,
821     12,  12,  12,  16,  16,  16,  17,  17,  17,
822     12,  13,  11,  16,  15,  16,  17,  18,  15,
823     12,  12,  11,  16,  14,  15,  16,  17,  15,
824     11,  13,  12,  15,  15,  16,  15,  18,  16,
825     12,  12,  12,  15,  15,  15,  16,  16,  16,
826     11,  12,  12,  15,  14,  15,  15,  16,  16,
827     11,  12,  12,  15,  15,  16,  15,  16,  17,
828     11,  12,  13,  15,  15,  16,  14,  17,  18,
829     11,  12,  11,  15,  14,  15,  15,  17,  15,
830     11,  12,  11,  15,  14,  15,  14,  17,  15,
831     11,  13,  12,  15,  14,  16,  14,  18,  17,
832     11,  12,  12,  14,  14,  16,  14,  17,  17,
833     12,  12,  12,  15,  16,  15,  17,  16,  17,
834     12,  11,  12,  15,  16,  15,  17,  15,  16,
835     12,  12,  11,  15,  15,  15,  17,  16,  15,
836     12,  12,  11,  15,  14,  14,  16,  16,  15,
837     13,  11,  11,  15,  15,  14,  18,  15,  15,
838     12,  11,  10,  15,  14,  13,  17,  15,  13,
839     11,  11,  11,  14,  14,  14,  15,  15,  14,
840     11,  11,  10,  14,  13,  13,  15,  15,  13,
841     12,  11,  12,  14,  15,  15,  16,  15,  17,
842     11,  11,  12,  14,  15,  15,  15,  15,  16,
843     11,  12,  11,  14,  14,  14,  15,  16,  15,
844     11,  11,  11,  14,  14,  14,  14,  15,  15,
845     11,  11,  12,  14,  14,  15,  14,  15,  16,
846     11,  11,  12,  14,  14,  15,  14,  15,  17,
847     11,  12,  12,  14,  14,  15,  14,  16,  16,
848     10,  12,  12,  13,  14,  15,  13,  16,  16,
849     11,  12,  11,  14,  13,  14,  14,  16,  14,
850     11,  11,  11,  14,  13,  14,  14,  15,  14,
851     10,  12,  11,  14,  13,  14,  13,  17,  14,
852     10,  12,  11,  14,  13,  14,  13,  16,  14,
853     11,  11,  11,  13,  13,  14,  14,  15,  15,
854     10,  11,  11,  13,  13,  14,  13,  15,  15,
855     10,  11,  12,  13,  14,  14,  13,  15,  16,
856     10,  11,  12,  13,  14,  15,  13,  15,  16,
857     11,  12,  11,  14,  13,  15,  14,  16,  15,
858     10,  12,  12,  14,  13,  15,  13,  17,  16,
859     10,  13,  12,  14,  14,  16,  13,  18,  16,
860     10,  12,  13,  14,  14,  16,  13,  17,  18,
861     10,  12,  11,  13,  13,  15,  13,  16,  15,
862     10,  12,  11,  13,  13,  15,  13,  16,  15,
863     10,  12,  12,  14,  13,  16,  13,  17,  16,
864     10,  12,  12,  13,  14,  16,  12,  16,  17,
865     12,  11,  12,  15,  16,  14,  17,  14,  16,
866     12,  11,  11,  14,  15,  13,  17,  14,  15,
867     11,  11,  12,  14,  14,  14,  15,  14,  16,
868     11,  11,  11,  13,  14,  14,  14,  14,  15,
869     11,  10,  11,  13,  14,  13,  15,  13,  15,
870     11,  10,  11,  13,  14,  13,  15,  13,  15,
871     12,  10,  10,  14,  14,  12,  17,  13,  13,
872     12,  10,  10,  13,  13,  11,  16,  13,  12,
873     11,  11,  11,  14,  14,  13,  15,  14,  14,
874     11,  11,  10,  13,  13,  13,  15,  14,  13,
875     11,  11,  10,  14,  12,  13,  14,  15,  13,
876     10,  12,  10,  14,  12,  13,  13,  16,  12,
877     11,  11,  11,  13,  14,  13,  14,  14,  15,
878     11,  11,  11,  13,  13,  13,  14,  14,  14,
879     10,  11,  11,  13,  13,  14,  13,  14,  15,
880     10,  11,  11,  12,  13,  13,  13,  14,  15,
881     11,  10,  11,  13,  13,  13,  14,  13,  14,
882     11,  11,  10,  13,  12,  13,  14,  14,  13,
883     11,  10,  10,  12,  12,  12,  14,  13,  13,
884     10,  10,  10,  12,  12,  12,  13,  13,  13,
885     11,  11,  10,  13,  12,  12,  14,  14,  12,
886     10,  11,  10,  13,  12,  12,  13,  14,  12,
887     10,  11,  10,  12,  11,  12,  13,  14,  12,
888     10,  11,  10,  12,  11,  12,  12,  14,  12,
889     10,  10,  11,  12,  13,  13,  13,  13,  15,
890     10,  10,  11,  12,  13,  13,  13,  13,  14,
891     10,  11,  11,  12,  12,  13,  12,  14,  14,
892     10,  11,  11,  12,  13,  13,  12,  14,  15,
893     10,  10,  11,  12,  12,  12,  12,  13,  14,
894     10,  10,  10,  11,  12,  12,  12,  13,  13,
895     10,  10,  11,  11,  12,  12,  12,  13,  14,
896      9,  10,  11,  11,  12,  13,  11,  13,  14,
897     11,  11,  11,  13,  13,  13,  14,  15,  14,
898     10,  11,  11,  13,  12,  13,  13,  15,  14,
899     10,  11,  10,  13,  12,  13,  13,  15,  13,
900     10,  11,  11,  13,  12,  13,  12,  15,  14,
901     10,  11,  11,  13,  13,  14,  13,  15,  15,
902     10,  11,  11,  13,  13,  14,  12,  15,  15,
903     10,  11,  11,  13,  13,  14,  12,  15,  15,
904     10,  11,  12,  12,  13,  15,  12,  15,  16,
905     10,  12,  11,  14,  12,  14,  13,  16,  14,
906     10,  12,  11,  14,  12,  15,  12,  17,  14,
907     10,  12,  12,  13,  13,  15,  12,  16,  16,
908     10,  13,  12,  14,  13,  16,  12,  18,  17,
909     10,  12,  11,  13,  12,  15,  12,  16,  15,
910     10,  12,  11,  13,  12,  14,  12,  16,  15,
911     10,  12,  12,  13,  13,  15,  12,  17,  16,
912     10,  12,  12,  13,  13,  16,  12,  16,  17,
913     10,  12,  10,  13,  12,  14,  12,  16,  13,
914     10,  12,  11,  13,  12,  14,  12,  16,  14,
915     10,  12,  10,  13,  11,  13,  12,  16,  13,
916     10,  11,  11,  12,  12,  14,  12,  15,  14,
917     10,  11,  11,  12,  12,  13,  12,  14,  14,
918     10,  11,  11,  12,  12,  14,  12,  15,  15,
919      9,  11,  11,  12,  12,  14,  11,  15,  15,
920      9,  11,  12,  12,  13,  14,  11,  15,  16,
921     10,  12,  11,  13,  12,  15,  12,  17,  14,
922      9,  12,  11,  13,  12,  15,  11,  17,  15,
923      9,  12,  12,  13,  12,  15,  11,  16,  16,
924      9,  12,  12,  13,  13,  16,  11,  17,  17,
925      9,  12,  11,  13,  12,  15,  11,  17,  14,
926      9,  12,  12,  13,  12,  16,  11,  17,  16,
927      9,  12,  12,  13,  12,  15,  11,  17,  16,
928      9,  13,  12,  13,  13,  16,  11,  18,  17,
929     12,  10,  11,  13,  14,  12,  16,  12,  14,
930     11,  10,  10,  12,  13,  12,  14,  12,  13,
931     10,  10,  11,  12,  13,  12,  13,  12,  15,
932     10,  10,  10,  12,  12,  12,  13,  12,  13,
933     11,   9,  10,  12,  13,  11,  15,  11,  13,
934     11,  10,  10,  12,  12,  11,  14,  12,  12,
935     10,  10,   9,  11,  11,  11,  13,  12,  11,
936     10,  10,   9,  11,  11,  10,  13,  12,  10,
937     10,  10,  10,  12,  12,  12,  13,  13,  13,
938     10,  10,  10,  12,  11,  12,  12,  13,  13,
939     10,  10,  10,  11,  11,  11,  12,  12,  13,
940     10,  10,  10,  11,  11,  11,  12,  12,  12,
941     10,  10,  10,  12,  11,  11,  12,  13,  12,
942     10,  10,   9,  11,  11,  11,  12,  13,  11,
943      9,  10,   9,  11,  10,  11,  11,  12,  11,
944      9,  10,   9,  11,  10,  11,  11,  13,  11,
945     10,   9,  11,  11,  12,  11,  13,  11,  14,
946     10,  10,  10,  11,  12,  11,  13,  12,  13,
947     10,  10,  10,  11,  12,  12,  12,  12,  13,
948      9,  10,  10,  10,  11,  11,  11,  12,  13,
949     10,   9,  10,  11,  12,  10,  13,  11,  12,
950     10,   9,  10,  11,  11,  10,  12,  11,  12,
951      9,  10,  10,  11,  11,  11,  11,  12,  12,
952      9,   9,  10,  10,  10,  11,  11,  11,  12,
953      9,  10,  10,  11,  11,  12,  11,  13,  13,
954      9,  10,  10,  11,  11,  12,  11,  13,  13,
955      9,  10,  11,  11,  11,  12,  11,  12,  14,
956      9,  10,  11,  11,  11,  12,  11,  13,  14,
957      9,  10,  10,  10,  10,  11,  11,  12,  12,
958      9,  10,  10,  10,  10,  11,  10,  12,  13,
959      9,   9,  10,  10,  10,  11,  10,  11,  12,
960      9,  10,  10,  10,  10,  12,  10,  12,  13,
961     10,  11,  10,  12,  12,  13,  13,  14,  13,
962     10,  11,  10,  12,  12,  13,  12,  14,  13,
963     10,  11,  10,  12,  11,  13,  12,  15,  13,
964     10,  11,  10,  12,  11,  13,  12,  14,  13,
965     10,  10,  10,  12,  11,  12,  12,  13,  13,
966     10,  10,  10,  11,  11,  12,  12,  13,  13,
967      9,  11,  10,  12,  11,  12,  11,  14,  13,
968      9,  11,  10,  11,  11,  12,  11,  14,  13,
969     10,  11,  11,  12,  12,  13,  12,  14,  14,
970      9,  11,  11,  12,  12,  13,  11,  14,  14,
971      9,  11,  11,  11,  12,  13,  11,  14,  15,
972      9,  11,  12,  11,  12,  14,  11,  14,  16,
973      9,  11,  11,  12,  11,  13,  11,  14,  14,
974      9,  11,  11,  12,  12,  13,  11,  14,  14,
975      9,  11,  11,  11,  12,  13,  11,  14,  15,
976      9,  11,  12,  11,  12,  14,  10,  14,  16,
977      9,  11,  10,  12,  11,  13,  11,  15,  13,
978      9,  11,  11,  12,  11,  14,  11,  15,  14,
979      9,  12,  10,  12,  11,  13,  11,  16,  13,
980      9,  11,  11,  12,  11,  14,  11,  15,  14,
981      9,  11,  11,  12,  12,  14,  11,  15,  15,
982      9,  11,  12,  12,  12,  15,  11,  15,  16,
983      9,  12,  11,  12,  12,  14,  11,  16,  15,
984      9,  12,  12,  12,  13,  15,  11,  16,  16,
985      9,  12,  11,  13,  11,  14,  11,  17,  14,
986      9,  12,  11,  13,  12,  15,  11,  17,  15,
987      9,  12,  11,  12,  12,  14,  10,  16,  15,
988      9,  12,  12,  12,  12,  15,  10,  16,  16,
989      9,  12,  11,  13,  11,  15,  10,  17,  14,
990      9,  13,  12,  13,  12,  16,  10,  18,  16,
991      9,  13,  12,  13,  12,  16,  10,  18,  16,
992      9,  12,  13,  13,  13,  16,  10,  17,  18,
993     10,  11,  10,  12,  11,  12,  12,  15,  12,
994      9,  11,  10,  12,  10,  12,  11,  15,  12,
995      9,  10,  10,  11,  11,  12,  11,  13,  12,
996      9,  10,  10,  11,  10,  11,  10,  13,  12,
997      9,  11,  10,  12,  11,  12,  11,  14,  13,
998      9,  11,  10,  11,  11,  12,  11,  14,  13,
999      9,  11,  10,  12,  11,  13,  10,  15,  13,
1000      9,  11,  11,  12,  11,  14,  10,  15,  14,
1001      9,  10,  10,  11,  11,  12,  10,  13,  13,
1002      9,  11,  10,  11,  10,  12,  10,  14,  12,
1003      9,  10,  10,  11,  11,  12,  10,  13,  13,
1004      9,  10,  11,  11,  11,  13,  10,  13,  14,
1005      9,  11,  11,  11,  11,  13,  10,  14,  14,
1006      9,  11,  11,  11,  12,  14,  10,  14,  15,
1007      9,  11,  11,  11,  11,  13,  10,  14,  14,
1008      9,  11,  11,  11,  11,  14,  10,  14,  15,
1009      9,  12,  10,  12,  11,  13,  11,  16,  13,
1010      9,  12,  10,  12,  11,  14,  10,  16,  13,
1011      9,  11,  11,  12,  11,  14,  10,  15,  14,
1012      9,  11,  11,  12,  12,  14,  10,  15,  15,
1013      9,  12,  11,  12,  11,  14,  10,  16,  15,
1014      9,  12,  12,  12,  12,  15,  10,  16,  16,
1015      9,  12,  11,  13,  12,  15,  10,  17,  15,
1016      9,  13,  12,  13,  12,  16,  10,  18,  17,
1017      9,  11,  10,  12,  11,  13,  10,  15,  13,
1018      9,  12,  11,  12,  11,  14,  10,  16,  14,
1019      9,  12,  11,  12,  11,  14,  10,  16,  15,
1020      9,  11,  12,  12,  12,  15,  10,  15,  16,
1021      9,  12,  11,  12,  11,  15,  10,  17,  14,
1022      9,  12,  12,  12,  12,  16,  10,  17,  16,
1023      8,  12,  11,  12,  11,  14,   9,  16,  15,
1024      8,  12,  12,  12,  12,  15,   9,  17,  16,
1025     10,   9,   9,  10,  11,  10,  12,  10,  11,
1026      9,   9,   9,  10,  10,   9,  11,  10,  10,
1027      9,  10,   9,  10,  10,  10,  11,  12,  11,
1028      9,   9,   9,  10,   9,  10,  10,  11,  10,
1029      9,   9,  10,  10,  10,  11,  11,  11,  12,
1030      9,   9,  10,   9,  10,  10,  10,  10,  12,
1031      9,   9,   9,   9,   9,  10,  10,  11,  11,
1032      8,   9,   9,   9,   9,  10,   9,  11,  11,
1033      9,  10,   9,  10,  10,  11,  10,  12,  11,
1034      8,  10,   9,  10,   9,  10,   9,  12,  11,
1035      8,  10,  10,  10,   9,  11,   9,  12,  12,
1036      8,   9,  10,   9,  10,  11,   9,  11,  13,
1037      9,   9,   9,   9,   9,   9,  10,  10,  10,
1038      7,   8,   8,   7,   7,   7,   7,   8,   8,
1039      8,  10,   9,   9,   9,  10,   8,  12,  11,
1040      8,   9,   9,   8,   8,  10,   8,  10,  11,
1041      9,  11,  10,  11,  10,  12,  10,  15,  12,
1042      9,  11,  10,  11,  10,  13,  10,  15,  12,
1043      9,  10,  10,  10,  10,  12,  10,  13,  13,
1044      8,  10,  11,  10,  11,  13,   9,  13,  14,
1045      9,  11,  10,  11,  10,  13,  10,  15,  13,
1046      9,  11,  11,  11,  11,  14,  10,  15,  14,
1047      8,  11,  11,  11,  11,  13,   9,  14,  14,
1048      8,  11,  12,  11,  11,  14,   9,  15,  16,
1049      8,  10,   9,  10,   9,  11,   9,  13,  11,
1050      8,  11,  10,  11,  10,  12,   9,  14,  13,
1051      8,  11,  10,  10,  10,  12,   9,  14,  13,
1052      8,  10,  11,  10,  11,  13,   9,  13,  14,
1053      8,  12,  11,  11,  10,  14,   9,  16,  14,
1054      8,  12,  11,  11,  11,  14,   9,  16,  15,
1055      8,  11,  10,  10,  10,  12,   9,  14,  13,
1056      8,  11,  10,  10,  10,  13,   8,  14,  13
1057 };
1058
1059 static const signed short etable1[5120]={
1060      38,  -4,  15,  -4,  14, -13,  12, -11,  -2,  -6,
1061      -6, -11, -45, -16, -11, -13,  -7,   6, -12,   4,
1062     -20,   3, -16,  12,  -1,  12,  46,  24,   0,  33,
1063      -3,   9, -12, -12,  -8,  -7,  17,  -6,   0,  -2,
1064      60, -16,   3, -22,  10, -32,   0, -28, -17, -18,
1065      -3, -25, -37, -23, -10,   3,   2,   3,   0,   3,
1066     -14,   0, -14,  -1,   0,   2,  32,   9,  -1,  25,
1067       7,  13,  -5,  13,   8,   1,   2,   8, -10,   6,
1068      27, -12,  28,  -2,   6,  -7,  15,   9, -11,   1,
1069     -13, -11, -40,   4, -29, -14, -19,  -5, -23,  -8,
1070     -30, -13, -17,   0, -14,  12,  34,  20,  -2,  25,
1071       2, -16,  -4, -12,  15,  16,  29,   7,  24,  10,
1072      49, -24,  16, -20,   2, -26,   2,  -7, -25, -10,
1073     -11, -25, -32,  -3, -27,   2,  -8,  -8, -11,  -9,
1074     -24, -17, -16, -14, -13,   2,  20,   5,  -4,  17,
1075      14, -12,   3,  13,  33,  25,  14,  23,  15,  19,
1076      46,  -6,  21,   8,  -2, -16,  -5,  -8, -11,   4,
1077       8,  15, -24,   4,  -2, -26,  -3, -16, -16, -14,
1078      -9,  -2,  -1,   4,  19,   7,  36,  17,   9,  13,
1079       0,  31,  -5, -12,   7,  -8,  11, -15, -13,  -4,
1080      68, -18,   9,  -9,  -6, -35, -18, -25, -26,  -7,
1081      10,   1, -16,  -3,  -1,  -9,   6, -19,  -4, -15,
1082      -4,  -6,   0,  -8,  20,  -2,  23,   2,   7,   5,
1083      12,  35,   1,  13,  24,   0,  -3,   0, -22,   4,
1084      35, -14,  34,  10, -10, -10,  -1,  12, -20,  12,
1085       0,  15, -18,  24, -20, -27, -14, -28, -27, -27,
1086     -20, -19,  -2,  -8,   5,   7,  25,  13,   5,   5,
1087       6,   5,   2, -12,  31,  15,  23,  -1,  12,   8,
1088      57, -26,  22,  -7, -14, -28, -14,  -3, -35,   0,
1089       3,   1, -11,  16, -18, -10,  -4, -31, -15, -28,
1090     -14, -23,  -1, -21,   7,  -2,  11,  -1,   3,  -1,
1091      18,   9,  10,  13,  49,  24,   8,  14,   2,  16,
1092      25,  15,  22,  11,  18,   4,  15, -22,   8,  -2,
1093     -17,  -9, -48, -20, -30, -17, -16,  11,  -1,  16,
1094       2,  10,  -5,  26,  -2,  -4,  22,   0,   2,  10,
1095      -6,  13, -14,  10, -23,   0,  10,  -2,   1,   0,
1096      47,   3,  11,  -6,  15, -13,   2, -38,  -6, -13,
1097     -15, -22, -40, -28, -28,   0,  -5,   8,  10,  15,
1098       7,   7,  -4,  13,  -1, -14,   9, -14,   0,   2,
1099       4,  18,  -7,  36,  -6,   8,  -3,  13,  -7,   8,
1100      14,   7,  36,  13,  10,  10,  18,   0,   0,   5,
1101     -25,  -8, -43,   0, -48, -18, -27,   0, -12,   3,
1102      -7,  -6,  -7,  13, -15,  -5,  11,  -3,   0,   2,
1103       0, -12,  -6,  10,   0,  23,  22,  11,  26,  12,
1104      36,  -5,  24,  -4,   7,  -7,   6, -17, -14,  -5,
1105     -22, -22, -35,  -8, -46,  -1, -17,  -3,   0,   2,
1106      -2, -10,  -5,   0, -14, -15,  -2, -18,  -2,  -4,
1107      11,  -7,   1,  36,  18,  32,   7,  27,  17,  20,
1108      33,  13,  29,  24,   1,   1,  -2, -18,   0,   9,
1109      -3,  17, -27,   0, -21, -30, -12, -11,  -5,  -2,
1110      12,   4,   9,  19,  18,  -9,  13,  -6,  11,  -8,
1111      -2,  35,  -8,  10,  -7,  -1,   4, -11, -10,  -2,
1112      55,   1,  17,   6,  -1, -16, -15, -35, -15,  -2,
1113       0,   4, -19,  -8, -20, -13,  -1, -14,   7,  -3,
1114      18,   0,  10,   5,  19, -19,   0, -21,   8, -16,
1115       9,  39,   0,  36,  10,   7,  -9,   4, -20,   5,
1116      22,   5,  42,  26,  -6,   8,   1,   2,  -9,  17,
1117     -10,  18, -21,  19, -39, -31, -23, -23, -16, -15,
1118       2, -12,   7,   6,   5,  -9,   1, -10,   7, -16,
1119       4,   9,   0,  10,  17,  22,  16,   2,  14,   9,
1120      44,  -6,  30,   8,  -9, -10, -11, -14, -23,   5,
1121      -8,   4, -14,  12, -37, -14, -12, -26,  -4, -16,
1122       8, -16,   9,  -7,   6, -19, -12, -25,   5, -24,
1123      15,  13,   8,  36,  34,  31,   1,  18,   4,  18,
1124      -3,  -5,  -9,  -7,  15,  -1,   5,  13,   2,  12,
1125       5,   2, -21, -23,  -2, -16,   0,   5,  -6,  13,
1126     -23,   3, -32,  10, -15,   8,  44,  28,   9,  37,
1127      -2,  13,  -9, -15, -12, -27,  -7, -12,   0, -11,
1128      18, -17, -21, -25,  11, -19,  -6,  -3, -11,   0,
1129       7, -11, -13, -31,  -1,   0,   9,   1,   5,  12,
1130     -18,   0, -31,  -2, -13,  -1,  30,  14,   7,  29,
1131       9,  18,  -1,  10,   4, -18, -22,   3, -10,  -2,
1132     -13, -13,   3,  -5,   7,   4,   9,  34,  -5,  20,
1133      -2,   3, -16,  -3, -20, -17, -11,  -7, -17,   0,
1134     -34, -13, -33,  -2, -28,   8,  32,  24,   5,  29,
1135       3, -12,   0, -15,  11,  -3,   3,   2,  24,   1,
1136       8, -25,  -8, -23,   3, -13,  -3,  17, -20,   8,
1137       0, -10,  -8, -11, -18,   0,  -1, -10,  -5,   0,
1138     -28, -17, -32, -15, -26,  -1,  19,   9,   3,  21,
1139      15,  -7,   6,   9,  29,   5, -10,  17,  15,   9,
1140       4,  -6,  -3,   5,  -1,  -4, -11,  16,  -6,  23,
1141      19,  29,   0,  -3,   6, -30,   3, -17, -10,  -5,
1142     -13,  -2, -17,   3,   5,   3,  35,  21,  17,  17,
1143       2,  35,  -2, -15,   3, -28, -13, -21, -13, -13,
1144      26, -19, -15, -12,  -5, -22, -24,   0, -21,  12,
1145      21,  15,   8, -11,   7, -12,  14, -20,   2,  -6,
1146      -7,  -6, -16,  -9,   6,  -5,  21,   7,  15,  10,
1147      13,  39,   5,  10,  20, -19, -28,  -5, -22,  -5,
1148      -5, -15,   9,   7,  -9,   2,  -8,  37, -14,  31,
1149      11,  29,   5,  16, -11, -30,  -7, -29, -21, -18,
1150     -23, -19, -18,  -9,  -7,   3,  23,  17,  14,   9,
1151       8,   9,   6, -15,  27,  -4,  -2,  -6,  12,  -1,
1152      16, -27,  -2, -10, -13, -16, -20,  20, -29,  20,
1153      14,  16,  13,   8,  -9, -13,   2, -33,  -9, -19,
1154     -17, -23, -17, -22,  -6,  -6,   9,   2,  12,   2,
1155      20,  13,  13,  10,  45,   4, -16,   8,   2,   7,
1156     -16,  14,  -2,   8,  20,  17,   9,   2,  14,  16,
1157      -6,   5, -24, -28, -21, -20,  -8,   9,   4,  25,
1158      -1,  11, -22,  24, -15,  -8,  21,   5,  11,  14,
1159      -5,  18, -11,   7, -27, -20, -14,  -7,   1,  -9,
1160       6,   2, -14,  -9,  16,  -1,  -3, -14,   0,   5,
1161      -3,  -8, -16, -36, -19,  -3,   1,   6,  17,  24,
1162       4,   7, -21,  11, -14, -18,   7,  -9,   9,   7,
1163       6,  22,  -3,  33, -10, -11, -28,   7,  -7,   0,
1164     -26,   6,  11,  10,  12,  23,  12,  23,   5,  24,
1165     -13,   5, -19,  -8, -38, -21, -20,  -2,  -6,  12,
1166     -11,  -5, -23,  11, -29,  -9,   9,   0,   7,   6,
1167       1,  -7,  -2,   7,  -3,   3,  -2,   6,  27,   3,
1168      -4,  -6,   0,  -7,   8,   4,   0,   6,  -9,  13,
1169     -11,  -7, -11, -15, -37,  -4,  -9,  -5,   5,  11,
1170      -5,  -9, -22,  -1, -27, -18,  -4, -14,   5,   0,
1171      12,  -3,   4,  32,  14,  12, -17,  22,  17,  11,
1172      -8,  12,   3,  21,   3,  14,  -8,   5,   4,  28,
1173       7,  32,  -2,  -8, -12, -34,  -4, -12,   1,   6,
1174       9,   4,  -7,  17,   4, -13,  11,  -1,  19,  -4,
1175       0,  39,  -4,   7, -11, -21, -20, -16, -10, -11,
1176      13,   0,  -8,   3,   0,  -4, -21, -11,  -9,  16,
1177      10,  18,   5, -16, -10, -16,   5, -15,  13,   5,
1178      15,   1,  -6,   4,   6, -23,  -2, -16,  17, -12,
1179      10,  44,   3,  33,   6, -12, -34,  -1, -20,  -3,
1180     -18,   4,  17,  23,  -4,  20,  -4,  26,  -3,  36,
1181       0,  32,   2,  12, -29, -34, -16, -24, -10,  -6,
1182       0, -12,  -8,   4,  -8, -13,   0,  -6,  16, -12,
1183       5,  13,   3,   7,  13,   3,  -8,  -2,  14,   0,
1184       3,  -7,   5,   5,  -8,   2, -17,   9, -18,  24,
1185       2,  19,  10,   4, -28, -17,  -5, -28,   2,  -7,
1186       4, -15,  -7,  -8,  -6, -23, -13, -21,  14, -20,
1187      17,  18,  11,  33,  30,  11, -23,  13,   5,   9,
1188      60,  10,   7,  -1,   9,  -8,   6, -13,   2, -15,
1189      -1, -10, -13, -11,  15,   0,   6,   9,  -1,   0,
1190     -13,   1, -11,  -3, -13,  21,  13,  26,  -7,  31,
1191     -10,  -7, -16, -33, -31, -10,  22,  -8,   1,  -2,
1192      82,  -1,  -4, -19,   6, -27,  -6, -29, -12, -26,
1193       1, -24,  -5, -18,  17,  17,  17,   6,  10,   0,
1194      -7,  -2,  -9, -16, -12,  11,   0,  11,  -9,  23,
1195       0,  -3,  -8,  -8, -13,  -1,   8,   7,  -7,   6,
1196      49,   2,  21,   0,   1,  -2,   9,   8,  -6,  -6,
1197      -8, -10,  -8,   9,  -2,   0,  -4,  -2, -13, -12,
1198     -23, -15, -12, -16, -26,  21,   2,  21, -11,  23,
1199      -4, -33,  -7, -33,  -6,  13,  34,   5,  27,  10,
1200      71, -10,   9, -17,  -1, -20,  -3,  -8, -21, -18,
1201      -6, -24,   0,   1,   0,  16,   6,  -5,   0, -13,
1202     -17, -19, -11, -29, -25,  11, -11,   6, -13,  15,
1203       7, -29,   0,  -8,  11,  22,  20,  21,  17,  18,
1204      67,   8,  14,  11,  -7, -11, -11,  -9,  -7,  -3,
1205      13,  16,   8,   9,  24, -12,  10, -13,  -5, -17,
1206      -2,  -4,   3, -10,   6,  17,   4,  19,   0,  11,
1207      -6,  13,  -9, -33, -14, -10,  16, -17, -10,  -4,
1208      90,  -3,   2,  -6, -10, -29, -24, -26, -21, -15,
1209      15,   2,  16,   1,  25,   4,  21, -16,   6, -18,
1210       3,  -8,   5, -24,   8,   7,  -9,   4,  -1,   3,
1211       5,  18,  -1,  -7,   2,  -1,   2,  -1, -19,   3,
1212      57,   0,  27,  13, -14,  -5,  -7,  11, -15,   4,
1213       5,  16,  13,  29,   6, -13,   0, -25, -16, -31,
1214     -12, -22,   2, -23,  -6,  16,  -7,  14,  -2,   3,
1215       0, -12,   0, -33,   9,  13,  28,  -3,  14,   7,
1216      79, -11,  15,  -4, -18, -23, -20,  -5, -30,  -7,
1217       7,   2,  21,  21,   8,   3,  10, -28,  -4, -31,
1218      -6, -25,   3, -37,  -4,   7, -20,   0,  -4,  -4,
1219      11,  -7,   6,  -8,  27,  22,  14,  12,   5,  16,
1220      47,  30,  15,  14,  14,   9,   9, -23,  13, -10,
1221     -12,  -7, -16, -15,  -3,  -3,  -1,  14,   9,  12,
1222       9,   8,   0,  10, -14,   4,  -9,   2,  -5,   8,
1223     -13,  -3, -18, -10, -45,  -3,  16,  -4,   4,   0,
1224      69,  17,   3,  -3,  10,  -8,  -3, -40,  -1, -21,
1225     -10, -21,  -8, -23,  -1,  13,   8,  11,  21,  11,
1226      15,   4,   0,  -2, -13,  -5, -23, -12,  -7,   0,
1227      -1,   0, -10,  14, -28,   5,   1,  11,  -5,   7,
1228      36,  21,  28,  16,   6,  16,  12,  -2,   4,  -2,
1229     -20,  -7, -11,   4, -20,  -4, -12,   2,  -1,   0,
1230       0,  -8,  -2,  -2, -27,   4, -21,  -2,  -9,   0,
1231      -6, -29,  -9, -10, -21,  21,  28,  10,  29,  11,
1232      58,   9,  16,  -1,   2,  -2,   0, -19, -10, -13,
1233     -17, -21,  -3,  -3, -19,  12,  -2,   0,  10,  -1,
1234       5, -12,   0, -15, -26,  -5, -34, -16, -11,  -7,
1235       4, -25,  -2,  14,  -3,  29,  13,  25,  20,  20,
1236      55,  28,  21,  27,  -2,   7,  -8, -20,   4,   1,
1237       1,  18,   5,   4,   5, -16,   2,  -8,   5,  -5,
1238      19,   2,  14,   3,   6,   0, -18,  -4,   2, -11,
1239      -8,  18, -11, -10, -29,  -3,  10, -13,  -8,  -3,
1240      77,  16,   9,   9,  -6, -11, -21, -37, -10, -10,
1241       4,   5,  13,  -3,   7,   0,  13, -11,  17,  -6,
1242      25,  -1,  15,  -9,   7,  -9, -32, -19,   0, -18,
1243       2,  22,  -3,  15, -12,   5,  -4,   2, -17,   5,
1244      44,  20,  34,  29, -10,  13,  -4,   0,  -4,   9,
1245      -5,  19,  10,  24, -11, -17,  -8, -20,  -5, -19,
1246       9, -14,  12,  -9,  -6,   0, -30,  -9,   0, -19,
1247      -2,  -7,  -2, -10,  -5,  20,  21,   1,  17,   9,
1248      66,   8,  23,  11, -14,  -5, -17, -16, -19,  -2,
1249      -3,   5,  18,  17, -10,   0,   1, -23,   6, -20,
1250      15, -18,  14, -22,  -5, -10, -44, -23,  -2, -26,
1251       9,  -3,   4,  14,  12,  29,   7,  16,   7,  18,
1252      18,   9, -17,  -4,  11,   3,   0,  11,   7,   4,
1253      10,   3,  10, -18,  24,  -3,  14,   7,   4,  10,
1254     -16,   1, -27,  -4, -27,  17,  12,  30,   0,  35,
1255      -9,  -3, -12, -36, -35, -30,  -2, -13,   2, -11,
1256      40,  -2, -29, -22,   7, -14, -12,  -5,  -7,  -7,
1257      12,  -9,  18, -26,  26,  14,  24,   4,  16,   9,
1258     -10,  -2, -26, -18, -26,   7,  -1,  15,  -1,  27,
1259       2,   0,  -4, -11, -17, -21, -16,   1,  -7,  -3,
1260       8,   1,  -3,  -2,   3,  10,   3,  32,  -1,  12,
1261       2,   4,  15,   1,   7,  -3,   2,  -4,  -6,  -3,
1262     -26, -15, -29, -17, -40,  17,   0,  26,  -2,  27,
1263      -2, -29,  -4, -36, -10,  -6,   9,   0,  27,   0,
1264      30, -11, -15, -20,   0,  -8,  -9,  15, -15,   0,
1265       5,  -9,  23,  -6,   8,  13,  13,  -7,   5,  -3,
1266     -20, -19, -27, -31, -39,   7, -13,  11,  -4,  19,
1267       8, -25,   3, -11,   7,   2,  -4,  16,  18,   9,
1268      26,   7, -11,   8,  -5,   1, -17,  14,  -1,  15,
1269      24,  30,  32,   1,  33, -16,  18, -14,   0,  -8,
1270      -6,  -4, -12, -12,  -6,  13,   2,  23,   8,  15,
1271      -4,  17,  -5, -36, -18, -30,  -8, -22, -10, -14,
1272      48,  -4, -23,  -9,  -9, -17, -30,  -2, -16,   3,
1273      26,  16,  40,  -6,  35,   1,  28, -17,  12,  -9,
1274       0,  -8, -11, -25,  -5,   3, -10,   8,   6,   7,
1275       6,  22,   1, -11,  -1, -21, -22,  -7, -19,  -5,
1276      15,   0,   2,  10, -13,   7, -14,  35, -10,  23,
1277      16,  31,  37,  21,  16, -17,   6, -26, -10, -21,
1278     -16, -21, -13, -25, -19,  13,  -8,  19,   5,   7,
1279       1,  -8,   2, -36,   5,  -6,   3,  -8,  15,  -1,
1280      37, -12,  -9,  -7, -17, -11, -26,  18, -25,  12,
1281      19,  17,  45,  14,  17,   0,  17, -30,   1, -22,
1282     -10, -25, -12, -38, -18,   3, -22,   4,   3,   0,
1283      13,  -3,  10, -11,  23,   2, -10,   7,   5,   7,
1284       5,  29,  -9,  11,  15,  22,   3,   0,  18,   8,
1285      -1,   6,   7, -23,   6,  -6,   5,  12,  15,  21,
1286       5,   8, -17,   9, -28,   0, -11,   6,   2,  12,
1287     -11,   0, -14, -13, -49, -22,  -8,  -9,   4,  -9,
1288      27,  16, -21,  -6,  12,   3,  -9, -16,   3,  -2,
1289       1,  -7,  15, -31,   7,  10,  16,   9,  27,  21,
1290      11,   5, -16,  -3, -26,  -9, -24,  -7,   0,   4,
1291       0,   4,  -6,  11, -32, -14, -23,   6,  -5,  -1,
1292      -4,  20,   3,  13,   8,  28,   6,  21,  10,  16,
1293      -8,   7,  12,  -3, -11,  -7,  -5,   0,   4,   8,
1294      -4,  -8, -18,  -3, -41,   0, -22,   2,   0,   4,
1295      -5, -25,  -6, -14, -25,   1,   2,   4,  29,   2,
1296      17,   8,  -8,  -4,   4,  10,  -6,   5,  -4,   5,
1297      -6,  -6,  20, -10,  -9,   9,   4,  -2,  16,   7,
1298       1, -12, -17, -16, -39,  -9, -36, -12,  -2,  -3,
1299       6, -21,   1,  11,  -7,  10, -11,  20,  20,  11,
1300      13,  27,  -3,  24,  -1,  19, -14,   3,   9,  20,
1301      12,  33,  29,  -3,  15, -20,   9,  -9,  11,   3,
1302      16,   2,  -2,   2,  -7,  -3, -20,   0,  10,  -7,
1303      -7,  22,  -7, -13, -33, -23, -14, -18,  -7, -12,
1304      35,  15, -15,   6,  -4,   1, -27, -12,  -5,   8,
1305      15,  19,  37, -11,  16,  -2,  20, -12,  23,   2,
1306      22,  -1,  -1, -11,  -5, -13, -34, -14,   8, -14,
1307       4,  26,   0,  11, -16, -14, -29,  -2, -17,  -3,
1308       3,  19,   9,  26,  -8,  26, -10,  24,   0,  28,
1309       5,  33,  34,  17,  -2, -20,  -1, -22,   0, -10,
1310       6, -14,  -3, -10, -20,  -4, -32,  -4,   7, -15,
1311       0,  -3,   0, -13,  -9,   0,  -3,  -4,  17,   0,
1312      25,   7,  -2,   8, -12,   7, -23,   8, -13,  16,
1313       7,  20,  42,   9,   0,  -3,   9, -25,  12, -10,
1314      12, -18,  -2, -24, -19, -13, -46, -19,   5, -22,
1315      10,   0,   8,  11,   8,   9, -17,  11,   7,   8,
1316     -25,  -7,   2,  -8,  12,  -7,  23,  -8,  13, -16,
1317      -7, -20, -42,  -9,   0,   3,  -9,  25, -12,  10,
1318     -12,  18,   2,  24,  19,  13,  46,  19,  -5,  22,
1319     -10,   0,  -8, -11,  -8,  -9,  17, -11,  -7,  -8,
1320      -3, -19,  -9, -26,   8, -26,  10, -24,   0, -28,
1321      -5, -33, -34, -17,   2,  20,   1,  22,   0,  10,
1322      -6,  14,   3,  10,  20,   4,  32,   4,  -7,  15,
1323       0,   3,   0,  13,   9,   0,   3,   4, -17,   0,
1324     -35, -15,  15,  -6,   4,  -1,  27,  12,   5,  -8,
1325     -15, -19, -37,  11, -16,   2, -20,  12, -23,  -2,
1326     -22,   1,   1,  11,   5,  13,  34,  14,  -8,  14,
1327      -4, -26,   0, -11,  16,  14,  29,   2,  17,   3,
1328     -13, -27,   3, -24,   1, -19,  14,  -3,  -9, -20,
1329     -12, -33, -29,   3, -15,  20,  -9,   9, -11,  -3,
1330     -16,  -2,   2,  -2,   7,   3,  20,   0, -10,   7,
1331       7, -22,   7,  13,  33,  23,  14,  18,   7,  12,
1332     -17,  -8,   8,   4,  -4, -10,   6,  -5,   4,  -5,
1333       6,   6, -20,  10,   9,  -9,  -4,   2, -16,  -7,
1334      -1,  12,  17,  16,  39,   9,  36,  12,   2,   3,
1335      -6,  21,  -1, -11,   7, -10,  11, -20, -20, -11,
1336       4, -20,  -3, -13,  -8, -28,  -6, -21, -10, -16,
1337       8,  -7, -12,   3,  11,   7,   5,   0,  -4,  -8,
1338       4,   8,  18,   3,  41,   0,  22,  -2,   0,  -4,
1339       5,  25,   6,  14,  25,  -1,  -2,  -4, -29,  -2,
1340     -27, -16,  21,   6, -12,  -3,   9,  16,  -3,   2,
1341      -1,   7, -15,  31,  -7, -10, -16,  -9, -27, -21,
1342     -11,  -5,  16,   3,  26,   9,  24,   7,   0,  -4,
1343       0,  -4,   6, -11,  32,  14,  23,  -6,   5,   1,
1344      -5, -29,   9, -11, -15, -22,  -3,   0, -18,  -8,
1345       1,  -6,  -7,  23,  -6,   6,  -5, -12, -15, -21,
1346      -5,  -8,  17,  -9,  28,   0,  11,  -6,  -2, -12,
1347      11,   0,  14,  13,  49,  22,   8,   9,  -4,   9,
1348     -37,  12,   9,   7,  17,  11,  26, -18,  25, -12,
1349     -19, -17, -45, -14, -17,   0, -17,  30,  -1,  22,
1350      10,  25,  12,  38,  18,  -3,  22,  -4,  -3,   0,
1351     -13,   3, -10,  11, -23,  -2,  10,  -7,  -5,  -7,
1352     -15,   0,  -2, -10,  13,  -7,  14, -35,  10, -23,
1353     -16, -31, -37, -21, -16,  17,  -6,  26,  10,  21,
1354      16,  21,  13,  25,  19, -13,   8, -19,  -5,  -7,
1355      -1,   8,  -2,  36,  -5,   6,  -3,   8, -15,   1,
1356     -48,   4,  23,   9,   9,  17,  30,   2,  16,  -3,
1357     -26, -16, -40,   6, -35,  -1, -28,  17, -12,   9,
1358       0,   8,  11,  25,   5,  -3,  10,  -8,  -6,  -7,
1359      -6, -22,  -1,  11,   1,  21,  22,   7,  19,   5,
1360     -26,  -7,  11,  -8,   5,  -1,  17, -14,   1, -15,
1361     -24, -30, -32,  -1, -33,  16, -18,  14,   0,   8,
1362       6,   4,  12,  12,   6, -13,  -2, -23,  -8, -15,
1363       4, -17,   5,  36,  18,  30,   8,  22,  10,  14,
1364     -30,  11,  15,  20,   0,   8,   9, -15,  15,   0,
1365      -5,   9, -23,   6,  -8, -13, -13,   7,  -5,   3,
1366      20,  19,  27,  31,  39,  -7,  13, -11,   4, -19,
1367      -8,  25,  -3,  11,  -7,  -2,   4, -16, -18,  -9,
1368      -8,  -1,   3,   2,  -3, -10,  -3, -32,   1, -12,
1369      -2,  -4, -15,  -1,  -7,   3,  -2,   4,   6,   3,
1370      26,  15,  29,  17,  40, -17,   0, -26,   2, -27,
1371       2,  29,   4,  36,  10,   6,  -9,   0, -27,   0,
1372     -40,   2,  29,  22,  -7,  14,  12,   5,   7,   7,
1373     -12,   9, -18,  26, -26, -14, -24,  -4, -16,  -9,
1374      10,   2,  26,  18,  26,  -7,   1, -15,   1, -27,
1375      -2,   0,   4,  11,  17,  21,  16,  -1,   7,   3,
1376     -18,  -9,  17,   4, -11,  -3,   0, -11,  -7,  -4,
1377     -10,  -3, -10,  18, -24,   3, -14,  -7,  -4, -10,
1378      16,  -1,  27,   4,  27, -17, -12, -30,   0, -35,
1379       9,   3,  12,  36,  35,  30,   2,  13,  -2,  11,
1380     -66,  -8, -23, -11,  14,   5,  17,  16,  19,   2,
1381       3,  -5, -18, -17,  10,   0,  -1,  23,  -6,  20,
1382     -15,  18, -14,  22,   5,  10,  44,  23,   2,  26,
1383      -9,   3,  -4, -14, -12, -29,  -7, -16,  -7, -18,
1384     -44, -20, -34, -29,  10, -13,   4,   0,   4,  -9,
1385       5, -19, -10, -24,  11,  17,   8,  20,   5,  19,
1386      -9,  14, -12,   9,   6,   0,  30,   9,   0,  19,
1387       2,   7,   2,  10,   5, -20, -21,  -1, -17,  -9,
1388     -77, -16,  -9,  -9,   6,  11,  21,  37,  10,  10,
1389      -4,  -5, -13,   3,  -7,   0, -13,  11, -17,   6,
1390     -25,   1, -15,   9,  -7,   9,  32,  19,   0,  18,
1391      -2, -22,   3, -15,  12,  -5,   4,  -2,  17,  -5,
1392     -55, -28, -21, -27,   2,  -7,   8,  20,  -4,  -1,
1393      -1, -18,  -5,  -4,  -5,  16,  -2,   8,  -5,   5,
1394     -19,  -2, -14,  -3,  -6,   0,  18,   4,  -2,  11,
1395       8, -18,  11,  10,  29,   3, -10,  13,   8,   3,
1396     -58,  -9, -16,   1,  -2,   2,   0,  19,  10,  13,
1397      17,  21,   3,   3,  19, -12,   2,   0, -10,   1,
1398      -5,  12,   0,  15,  26,   5,  34,  16,  11,   7,
1399      -4,  25,   2, -14,   3, -29, -13, -25, -20, -20,
1400     -36, -21, -28, -16,  -6, -16, -12,   2,  -4,   2,
1401      20,   7,  11,  -4,  20,   4,  12,  -2,   1,   0,
1402       0,   8,   2,   2,  27,  -4,  21,   2,   9,   0,
1403       6,  29,   9,  10,  21, -21, -28, -10, -29, -11,
1404     -69, -17,  -3,   3, -10,   8,   3,  40,   1,  21,
1405      10,  21,   8,  23,   1, -13,  -8, -11, -21, -11,
1406     -15,  -4,   0,   2,  13,   5,  23,  12,   7,   0,
1407       1,   0,  10, -14,  28,  -5,  -1, -11,   5,  -7,
1408     -47, -30, -15, -14, -14,  -9,  -9,  23, -13,  10,
1409      12,   7,  16,  15,   3,   3,   1, -14,  -9, -12,
1410      -9,  -8,   0, -10,  14,  -4,   9,  -2,   5,  -8,
1411      13,   3,  18,  10,  45,   3, -16,   4,  -4,   0,
1412     -79,  11, -15,   4,  18,  23,  20,   5,  30,   7,
1413      -7,  -2, -21, -21,  -8,  -3, -10,  28,   4,  31,
1414       6,  25,  -3,  37,   4,  -7,  20,   0,   4,   4,
1415     -11,   7,  -6,   8, -27, -22, -14, -12,  -5, -16,
1416     -57,   0, -27, -13,  14,   5,   7, -11,  15,  -4,
1417      -5, -16, -13, -29,  -6,  13,   0,  25,  16,  31,
1418      12,  22,  -2,  23,   6, -16,   7, -14,   2,  -3,
1419       0,  12,   0,  33,  -9, -13, -28,   3, -14,  -7,
1420     -90,   3,  -2,   6,  10,  29,  24,  26,  21,  15,
1421     -15,  -2, -16,  -1, -25,  -4, -21,  16,  -6,  18,
1422      -3,   8,  -5,  24,  -8,  -7,   9,  -4,   1,  -3,
1423      -5, -18,   1,   7,  -2,   1,  -2,   1,  19,  -3,
1424     -67,  -8, -14, -11,   7,  11,  11,   9,   7,   3,
1425     -13, -16,  -8,  -9, -24,  12, -10,  13,   5,  17,
1426       2,   4,  -3,  10,  -6, -17,  -4, -19,   0, -11,
1427       6, -13,   9,  33,  14,  10, -16,  17,  10,   4,
1428     -71,  10,  -9,  17,   1,  20,   3,   8,  21,  18,
1429       6,  24,   0,  -1,   0, -16,  -6,   5,   0,  13,
1430      17,  19,  11,  29,  25, -11,  11,  -6,  13, -15,
1431      -7,  29,   0,   8, -11, -22, -20, -21, -17, -18,
1432     -49,  -2, -21,   0,  -1,   2,  -9,  -8,   6,   6,
1433       8,  10,   8,  -9,   2,   0,   4,   2,  13,  12,
1434      23,  15,  12,  16,  26, -21,  -2, -21,  11, -23,
1435       4,  33,   7,  33,   6, -13, -34,  -5, -27, -10,
1436     -82,   1,   4,  19,  -6,  27,   6,  29,  12,  26,
1437      -1,  24,   5,  18, -17, -17, -17,  -6, -10,   0,
1438       7,   2,   9,  16,  12, -11,   0, -11,   9, -23,
1439       0,   3,   8,   8,  13,   1,  -8,  -7,   7,  -6,
1440     -60, -10,  -7,   1,  -9,   8,  -6,  13,  -2,  15,
1441       1,  10,  13,  11, -15,   0,  -6,  -9,   1,   0,
1442      13,  -1,  11,   3,  13, -21, -13, -26,   7, -31,
1443      10,   7,  16,  33,  31,  10, -22,   8,  -1,   2,
1444      -3,   7,  -5,  -5,   8,  -2,  17,  -9,  18, -24,
1445      -2, -19, -10,  -4,  28,  17,   5,  28,  -2,   7,
1446      -4,  15,   7,   8,   6,  23,  13,  21, -14,  20,
1447     -17, -18, -11, -33, -30, -11,  23, -13,  -5,  -9,
1448      18,  -4, -17, -23,   4, -20,   4, -26,   3, -36,
1449       0, -32,  -2, -12,  29,  34,  16,  24,  10,   6,
1450       0,  12,   8,  -4,   8,  13,   0,   6, -16,  12,
1451      -5, -13,  -3,  -7, -13,  -3,   8,   2, -14,   0,
1452     -13,   0,   8,  -3,   0,   4,  21,  11,   9, -16,
1453     -10, -18,  -5,  16,  10,  16,  -5,  15, -13,  -5,
1454     -15,  -1,   6,  -4,  -6,  23,   2,  16, -17,  12,
1455     -10, -44,  -3, -33,  -6,  12,  34,   1,  20,   3,
1456       8, -12,  -3, -21,  -3, -14,   8,  -5,  -4, -28,
1457      -7, -32,   2,   8,  12,  34,   4,  12,  -1,  -6,
1458      -9,  -4,   7, -17,  -4,  13, -11,   1, -19,   4,
1459       0, -39,   4,  -7,  11,  21,  20,  16,  10,  11,
1460       4,   6,   0,   7,  -8,  -4,   0,  -6,   9, -13,
1461      11,   7,  11,  15,  37,   4,   9,   5,  -5, -11,
1462       5,   9,  22,   1,  27,  18,   4,  14,  -5,   0,
1463     -12,   3,  -4, -32, -14, -12,  17, -22, -17, -11,
1464      26,  -6, -11, -10, -12, -23, -12, -23,  -5, -24,
1465      13,  -5,  19,   8,  38,  21,  20,   2,   6, -12,
1466      11,   5,  23, -11,  29,   9,  -9,   0,  -7,  -6,
1467      -1,   7,   2,  -7,   3,  -3,   2,  -6, -27,  -3,
1468      -6,  -2,  14,   9, -16,   1,   3,  14,   0,  -5,
1469       3,   8,  16,  36,  19,   3,  -1,  -6, -17, -24,
1470      -4,  -7,  21, -11,  14,  18,  -7,   9,  -9,  -7,
1471      -6, -22,   3, -33,  10,  11,  28,  -7,   7,   0,
1472      16, -14,   2,  -8, -20, -17,  -9,  -2, -14, -16,
1473       6,  -5,  24,  28,  21,  20,   8,  -9,  -4, -25,
1474       1, -11,  22, -24,  15,   8, -21,  -5, -11, -14,
1475       5, -18,  11,  -7,  27,  20,  14,   7,  -1,   9,
1476     -16,  27,   2,  10,  13,  16,  20, -20,  29, -20,
1477     -14, -16, -13,  -8,   9,  13,  -2,  33,   9,  19,
1478      17,  23,  17,  22,   6,   6,  -9,  -2, -12,  -2,
1479     -20, -13, -13, -10, -45,  -4,  16,  -8,  -2,  -7,
1480       5,  15,  -9,  -7,   9,  -2,   8, -37,  14, -31,
1481     -11, -29,  -5, -16,  11,  30,   7,  29,  21,  18,
1482      23,  19,  18,   9,   7,  -3, -23, -17, -14,  -9,
1483      -8,  -9,  -6,  15, -27,   4,   2,   6, -12,   1,
1484     -26,  19,  15,  12,   5,  22,  24,   0,  21, -12,
1485     -21, -15,  -8,  11,  -7,  12, -14,  20,  -2,   6,
1486       7,   6,  16,   9,  -6,   5, -21,  -7, -15, -10,
1487     -13, -39,  -5, -10, -20,  19,  28,   5,  22,   5,
1488      -4,   6,   3,  -5,   1,   4,  11, -16,   6, -23,
1489     -19, -29,   0,   3,  -6,  30,  -3,  17,  10,   5,
1490      13,   2,  17,  -3,  -5,  -3, -35, -21, -17, -17,
1491      -2, -35,   2,  15,  -3,  28,  13,  21,  13,  13,
1492      -8,  25,   8,  23,  -3,  13,   3, -17,  20,  -8,
1493       0,  10,   8,  11,  18,   0,   1,  10,   5,   0,
1494      28,  17,  32,  15,  26,   1, -19,  -9,  -3, -21,
1495     -15,   7,  -6,  -9, -29,  -5,  10, -17, -15,  -9,
1496      13,  13,  -3,   5,  -7,  -4,  -9, -34,   5, -20,
1497       2,  -3,  16,   3,  20,  17,  11,   7,  17,   0,
1498      34,  13,  33,   2,  28,  -8, -32, -24,  -5, -29,
1499      -3,  12,   0,  15, -11,   3,  -3,  -2, -24,  -1,
1500     -18,  17,  21,  25, -11,  19,   6,   3,  11,   0,
1501      -7,  11,  13,  31,   1,   0,  -9,  -1,  -5, -12,
1502      18,   0,  31,   2,  13,   1, -30, -14,  -7, -29,
1503      -9, -18,   1, -10,  -4,  18,  22,  -3,  10,   2,
1504       3,   5,   9,   7, -15,   1,  -5, -13,  -2, -12,
1505      -5,  -2,  21,  23,   2,  16,   0,  -5,   6, -13,
1506      23,  -3,  32, -10,  15,  -8, -44, -28,  -9, -37,
1507       2, -13,   9,  15,  12,  27,   7,  12,   0,  11,
1508     -44,   6, -30,  -8,   9,  10,  11,  14,  23,  -5,
1509       8,  -4,  14, -12,  37,  14,  12,  26,   4,  16,
1510      -8,  16,  -9,   7,  -6,  19,  12,  25,  -5,  24,
1511     -15, -13,  -8, -36, -34, -31,  -1, -18,  -4, -18,
1512     -22,  -5, -42, -26,   6,  -8,  -1,  -2,   9, -17,
1513      10, -18,  21, -19,  39,  31,  23,  23,  16,  15,
1514      -2,  12,  -7,  -6,  -5,   9,  -1,  10,  -7,  16,
1515      -4,  -9,   0, -10, -17, -22, -16,  -2, -14,  -9,
1516     -55,  -1, -17,  -6,   1,  16,  15,  35,  15,   2,
1517       0,  -4,  19,   8,  20,  13,   1,  14,  -7,   3,
1518     -18,   0, -10,  -5, -19,  19,   0,  21,  -8,  16,
1519      -9, -39,   0, -36, -10,  -7,   9,  -4,  20,  -5,
1520     -33, -13, -29, -24,  -1,  -1,   2,  18,   0,  -9,
1521       3, -17,  27,   0,  21,  30,  12,  11,   5,   2,
1522     -12,  -4,  -9, -19, -18,   9, -13,   6, -11,   8,
1523       2, -35,   8, -10,   7,   1,  -4,  11,  10,   2,
1524     -36,   5, -24,   4,  -7,   7,  -6,  17,  14,   5,
1525      22,  22,  35,   8,  46,   1,  17,   3,   0,  -2,
1526       2,  10,   5,   0,  14,  15,   2,  18,   2,   4,
1527     -11,   7,  -1, -36, -18, -32,  -7, -27, -17, -20,
1528     -14,  -7, -36, -13, -10, -10, -18,   0,   0,  -5,
1529      25,   8,  43,   0,  48,  18,  27,   0,  12,  -3,
1530       7,   6,   7, -13,  15,   5, -11,   3,   0,  -2,
1531       0,  12,   6, -10,   0, -23, -22, -11, -26, -12,
1532     -47,  -3, -11,   6, -15,  13,  -2,  38,   6,  13,
1533      15,  22,  40,  28,  28,   0,   5,  -8, -10, -15,
1534      -7,  -7,   4, -13,   1,  14,  -9,  14,   0,  -2,
1535      -4, -18,   7, -36,   6,  -8,   3, -13,   7,  -8,
1536     -25, -15, -22, -11, -18,  -4, -15,  22,  -8,   2,
1537      17,   9,  48,  20,  30,  17,  16, -11,   1, -16,
1538      -2, -10,   5, -26,   2,   4, -22,   0,  -2, -10,
1539       6, -13,  14, -10,  23,   0, -10,   2,  -1,   0,
1540     -57,  26, -22,   7,  14,  28,  14,   3,  35,   0,
1541      -3,  -1,  11, -16,  18,  10,   4,  31,  15,  28,
1542      14,  23,   1,  21,  -7,   2, -11,   1,  -3,   1,
1543     -18,  -9, -10, -13, -49, -24,  -8, -14,  -2, -16,
1544     -35,  14, -34, -10,  10,  10,   1, -12,  20, -12,
1545       0, -15,  18, -24,  20,  27,  14,  28,  27,  27,
1546      20,  19,   2,   8,  -5,  -7, -25, -13,  -5,  -5,
1547      -6,  -5,  -2,  12, -31, -15, -23,   1, -12,  -8,
1548     -68,  18,  -9,   9,   6,  35,  18,  25,  26,   7,
1549     -10,  -1,  16,   3,   1,   9,  -6,  19,   4,  15,
1550       4,   6,   0,   8, -20,   2, -23,  -2,  -7,  -5,
1551     -12, -35,  -1, -13, -24,   0,   3,   0,  22,  -4,
1552     -46,   6, -21,  -8,   2,  16,   5,   8,  11,  -4,
1553      -8, -15,  24,  -4,   2,  26,   3,  16,  16,  14,
1554       9,   2,   1,  -4, -19,  -7, -36, -17,  -9, -13,
1555       0, -31,   5,  12,  -7,   8, -11,  15,  13,   4,
1556     -49,  24, -16,  20,  -2,  26,  -2,   7,  25,  10,
1557      11,  25,  32,   3,  27,  -2,   8,   8,  11,   9,
1558      24,  17,  16,  14,  13,  -2, -20,  -5,   4, -17,
1559     -14,  12,  -3, -13, -33, -25, -14, -23, -15, -19,
1560     -27,  12, -28,   2,  -6,   7, -15,  -9,  11,  -1,
1561      13,  11,  40,  -4,  29,  14,  19,   5,  23,   8,
1562      30,  13,  17,   0,  14, -12, -34, -20,   2, -25,
1563      -2,  16,   4,  12, -15, -16, -29,  -7, -24, -10,
1564     -60,  16,  -3,  22, -10,  32,   0,  28,  17,  18,
1565       3,  25,  37,  23,  10,  -3,  -2,  -3,   0,  -3,
1566      14,   0,  14,   1,   0,  -2, -32,  -9,   1, -25,
1567      -7, -13,   5, -13,  -8,  -1,  -2,  -8,  10,  -6,
1568     -38,   4, -15,   4, -14,  13, -12,  11,   2,   6,
1569       6,  11,  45,  16,  11,  13,   7,  -6,  12,  -4,
1570      20,  -3,  16, -12,   1, -12, -46, -24,   0, -33,
1571       3,  -9,  12,  12,   8,   7, -17,   6,   0,   2
1572 };
1573
1574 static const signed short etable2[5120]={
1575      73, -32, -60, -15, -26,  59,   2, -33,  30, -10,
1576      -3, -17,   8,  30,  -1, -26,  -4, -22,  10,  16,
1577     -36,  -5, -11,  56,  37,   6, -10,  -5, -13,  -3,
1578       6,  -5,  11,   4, -19,  -5, -16,  41,  24,  13,
1579       4, -11, -37,  23,  -5,  46,  -2, -29,  -5, -39,
1580     -21,  -9,   0,  49,  12,  -9, -16, -26,  22,  15,
1581     -45, -20,  -5,  40,  22,  17, -26,  31, -14,   2,
1582     -14,  10,  30,  20, -27,  -9, -39,  39,  18,   5,
1583      34, -25, -48, -28, -11,  34,  -2, -41,   9,  -7,
1584     -17,  21,  20,  24, -17, -33,   0, -24,  10,  42,
1585       3,  -5,  10,  42,  11,   8,  -3,   3,  16,   9,
1586      22,  -2,   0, -33, -10,  18,   7,  58,  10,  28,
1587     -34,  -4, -25,  10,   9,  21,  -7, -36, -26, -36,
1588     -35,  28,  12,  42,  -3, -16, -12, -28,  21,  42,
1589      -5, -21,  16,  26,  -4,  19, -19,  39,  15,  15,
1590       1,  13,  19, -17, -17,  14, -15,  55,   4,  19,
1591      28, -20, -51, -14,  -6,   7,   0, -26,  27,  -4,
1592      18, -40,  -6,  16,  -1, -15,   0, -55,  -5, -16,
1593     -19,  14,  -3,  49,  14,   1, -22, -30, -12,   0,
1594      24,  15,   9, -17, -45, -29,   4,  28,  51,  35,
1595     -40,   0, -28,  24,  14,  -5,  -4, -21,  -7, -33,
1596       0, -32, -15,  35,  12,   1, -11, -58,   5, -16,
1597     -28,   0,   1,  33,   0,  11, -39,   5, -14,   6,
1598       3,  31,  28,  -1, -53, -33, -19,  25,  46,  26,
1599     -11, -14, -39, -27,   9, -17,  -4, -33,   6,   0,
1600       4,  -1,   5,  10, -17, -22,   5, -57,  -5,   9,
1601      20,  13,  18,  35, -11,   3, -16, -22,  17,  13,
1602      40,  19,  -1, -55, -35,  -5,  27,  44,  37,  49,
1603     -80,   6, -16,  11,  30, -30,  -9, -28, -28, -29,
1604     -13,   6,  -2,  28,  -3,  -5,  -7, -60,   5,   9,
1605      11,  -1,  24,  19, -27,  13, -32,  13,  15,  19,
1606      19,  35,  17, -39, -43,  -9,   4,  42,  32,  41,
1607      78, -21, -43,   4, -38,  17,  17,  -5,  55,  24,
1608     -15, -36,  14,   4,  24, -24,  12,   5,  17,  31,
1609     -54,  -5,  -2,  27,  43, -12,   2,   9,  -9, -15,
1610      22,  -3,  28,  21, -20,   3,  20,  28,   9,  -5,
1611       9,  -1, -20,  43, -17,   3,  12,   0,  20,  -4,
1612     -33, -29,   6,  22,  38,  -7,   0,   1,  29,  30,
1613     -63, -21,   3,  11,  27,  -1, -14,  45, -10,  -9,
1614       1,  12,  47,  37, -28,   0,  -2,  26,   4, -13,
1615      39, -14, -30,  -8, -22,  -8,  12, -12,  34,  27,
1616     -29,   2,  26,  -2,   8, -31,  16,   3,  17,  57,
1617     -14,  -6,  19,  13,  16, -10,   8,  17,  20,  -2,
1618      38,   0,  17, -16, -11,  27,  44,  45,  -4,   8,
1619     -29,   5,  -7,  30,  -1, -21,   7,  -7,   0,   0,
1620     -47,   9,  18,  15,  22, -14,   4,   0,  28,  57,
1621     -23, -21,  25,  -2,   1,   0,  -7,  53,  19,   3,
1622      17,  15,  36,   0, -19,  24,  21,  43,  -9,   0,
1623      33, -10, -34,   5, -17, -35,  15,   1,  53,  30,
1624       6, -59,   0, -10,  24, -13,  17, -27,   1,  -1,
1625     -37,  13,   4,  20,  20, -18, -10, -16,  -8, -11,
1626      39,  18,  26,   0, -46, -20,  41,  15,  37,  15,
1627     -35,  10, -11,  44,   3, -48,  10,   6,  17,   2,
1628     -11, -51,  -8,   8,  38,   3,   4, -31,  12,  -2,
1629     -46,  -1,  10,   4,   5,  -7, -26,  19, -10,  -5,
1630      18,  34,  45,  15, -54, -24,  18,  13,  31,   7,
1631      -5,  -3, -21,  -7,  -2, -60,  10,  -5,  32,  34,
1632      -7, -20,  11, -16,   8, -20,  21, -29,   1,  24,
1633       2,  13,  27,   6,  -5, -15,  -3,  -8,  21,   1,
1634      55,  21,  15, -38, -37,   3,  65,  32,  23,  30,
1635     -74,  17,   0,  31,  18, -73,   5,   0,  -3,   5,
1636     -25, -12,   3,   1,  22,  -3,   9, -33,  12,  24,
1637      -6,  -2,  33,  -9, -21,  -5, -20,  27,  19,   7,
1638      34,  37,  34, -22, -44,   0,  41,  29,  17,  21,
1639      76, -35, -31, -28, -49,  43, -40,   0,  29, -14,
1640       8,   5,  10,  18, -26, -46,   0,   7,   6,   3,
1641     -25,  -7,  -2,  40,  28,  14,  18,  -3, -27, -28,
1642      -8, -45, -13,  34, -13, -27, -15,  31,  12,   3,
1643       7, -15,  -9,   9, -28,  29, -45,   5,  -6, -43,
1644      -9,  12,   2,  36, -12, -30, -11,   3,  17,   3,
1645     -34, -22,   3,  24,  12,  24,   2,  32, -28, -22,
1646     -29, -29,   5,  50, -21, -31, -38,  29,   7,  -5,
1647      36, -29, -19, -41, -34,  18, -45,  -6,   8, -10,
1648      -5,  43,  23,  11, -42, -53,   5,   5,   6,  30,
1649      14,  -8,  20,  26,   1,  16,  25,   4,   3, -15,
1650       7, -41, -23,  -3,  -4,  -3,   8,  48,  -1,  17,
1651     -32,  -8,   3,  -2, -13,   4, -50,  -1, -27, -39,
1652     -23,  51,  15,  30, -27, -37,  -7,   1,  17,  29,
1653       5, -23,  25,  10, -14,  26,   8,  41,   1,  -9,
1654     -13, -26,  -5,  12, -12,  -7, -14,  45,  -6,   9,
1655      31, -24, -23, -27, -29,  -9, -43,   8,  26,  -7,
1656      30, -17,  -4,   3, -26, -35,   5, -24, -10, -28,
1657      -9,  12,   5,  33,   5,   8,   5, -29, -26, -24,
1658       9, -23, -14,  12, -39, -52,   5,  18,  39,  24,
1659     -37,  -3,   0,  10,  -7, -22, -48,  12,  -8, -36,
1660      12,  -9, -12,  22, -12, -19,  -6, -28,   0, -29,
1661     -18,  -3,  11,  17, -10,  18, -10,   7, -27, -18,
1662     -11,  -7,   3,  28, -47, -55, -18,  15,  34,  16,
1663      -8, -17, -10, -40, -13, -34, -47,   0,   5,  -4,
1664      16,  21,   8,  -2, -42, -43,  10, -26, -10,  -2,
1665      31,  11,  27,  19, -21,  10,  12, -20,   3, -11,
1666      25, -20, -25, -25, -29, -28,  28,  34,  25,  38,
1667     -77,   2,  11,  -1,   7, -47, -52,   5, -29, -33,
1668      -1,  28,   0,  15, -28, -26,  -2, -30,   0,  -2,
1669      22,  -4,  33,   3, -36,  21,  -3,  15,   2,  -5,
1670       4,  -4,  -6,  -9, -37, -31,   5,  32,  20,  30,
1671      81, -25, -14,  -8, -61,   0, -25,  28,  54,  20,
1672      -3, -14,  17,  -8,   0, -44,  16,  35,  13,  18,
1673     -43,  -7,   6,  11,  33,  -4,  30,  11, -22, -40,
1674       6, -43,   3,  50, -14, -18,  22,  18,  -1, -16,
1675      12,  -4,   8,  29, -39, -12, -30,  33,  19,  -8,
1676     -21,  -6,   8,   9,  13, -28,   4,  31,  24,  18,
1677     -52, -23,  12,  -4,  18,   5,  14,  47, -24, -34,
1678     -14, -27,  22,  66, -22, -22,  -1,  16,  -6, -24,
1679      41, -18,  -2, -21, -45, -24, -30,  21,  33,  24,
1680     -17,  24,  29, -15, -16, -51,  21,  33,  13,  45,
1681      -3,  -8,  28,  -2,   7,  -2,  37,  19,   7, -27,
1682      22, -39,  -7,  12,  -5,   5,  45,  35, -15,  -1,
1683     -27,   1,  20,  17, -24, -38, -35,  26,  -1,  -4,
1684     -35,  32,  21,   3,  -2, -35,   8,  29,  24,  44,
1685     -12, -24,  34, -18,  -8,   7,  21,  55,   5, -21,
1686       2, -23,  11,  28, -13,   1,  22,  33, -21, -10,
1687      36, -13,  -5,  -7, -40, -51, -28,  36,  52,  27,
1688      18, -36,   2, -22,   0, -33,  21,   2,  -3, -13,
1689     -26,  11,  14,   4,  10, -10,  18, -14, -22, -36,
1690      24, -21,   1,  28, -40, -42,  42,   5,  25,   5,
1691     -32,   6,  17,  31, -19, -65, -33,  41,  16,  -1,
1692       0, -29,  -6,  -4,  13, -17,   9,  -1,   8, -14,
1693     -35,  -3,  19, -11,  -4,   0,   1,  21, -23, -30,
1694       3,  -5,  20,  44, -48, -46,  19,   3,  20,  -3,
1695      -3,  -7,   6, -20, -25, -77, -32,  29,  31,  30,
1696       4,   2,  14, -29, -16, -40,  26,   0,  -3,  12,
1697      13,  10,  36,  -9, -15,  -8,  24,  -6,   7, -22,
1698      40, -17,  -8,  -9, -31, -18,  66,  22,  11,  19,
1699     -72,  13,  29,  18,  -4, -90, -37,  34,  -4,   1,
1700     -13,   9,   6, -11,  -2, -24,  13,  -3,   7,  11,
1701       4,  -4,  42, -25, -31,   1,   8,  29,   6, -17,
1702      19,  -2,  10,   6, -38, -22,  42,  19,   6,  11,
1703     116, -20, -68, -30, -28,  83,  28, -18,  32, -22,
1704     -13, -21,   5,  28,   5,  -7, -24,  -8, -22,  17,
1705     -23,  30, -25,  45,  15,  -9, -11, -18,  22, -10,
1706       4,  -2,  19, -12,  23,   3, -43,   2,  12,  -4,
1707      47,   0, -45,   7,  -7,  69,  23, -13,  -2, -51,
1708     -32, -14,  -3,  47,  19,   8, -37, -11, -10,  16,
1709     -32,  15, -19,  29,   0,   1, -28,  18,  20,  -4,
1710     -16,  13,  38,   3,  15,   0, -66,   0,   7, -13,
1711      77, -13, -56, -43, -13,  57,  23, -26,  11, -19,
1712     -27,  16,  17,  22, -10, -15, -19, -10, -22,  43,
1713      16,  30,  -2,  31, -11,  -6,  -5,  -9,  52,   2,
1714      20,   0,   8, -50,  33,  27, -19,  19,  -1,   9,
1715       8,   6, -33,  -4,   7,  44,  18, -21, -23, -48,
1716     -46,  24,   9,  40,   3,   1, -32, -13, -11,  43,
1717       7,  14,   3,  15, -26,   3, -21,  26,  50,   8,
1718       0,  16,  27, -34,  25,  23, -43,  17,  -6,   1,
1719      71,  -9, -59, -29,  -8,  30,  26, -11,  30, -16,
1720       8, -44,  -9,  14,   5,   2, -19, -40, -38, -15,
1721      -7,  50, -17,  38,  -7, -14, -24, -43,  22,  -6,
1722      22,  19,  17, -34,  -2, -20, -23, -10,  39,  16,
1723       2,  11, -36,   9,  13,  17,  21,  -6,  -5, -45,
1724     -10, -36, -18,  33,  19,  19, -31, -44, -27, -15,
1725     -16,  34, -11,  22, -22,  -4, -40,  -7,  21,   0,
1726       1,  35,  36, -18, -10, -24, -46, -12,  34,   8,
1727      32,  -2, -47, -42,   7,   5,  21, -18,   9, -12,
1728      -5,  -5,   2,   8, -10,  -4, -14, -42, -38,  10,
1729      33,  49,   5,  24, -33, -12, -17, -35,  52,   6,
1730      38,  22,   7, -72,   7,   3,   0,   6,  25,  30,
1731     -36,  18, -24,  -3,  28,  -7,  16, -13, -26, -41,
1732     -24,   1,  -5,  26,   3,  12, -27, -46, -27,  10,
1733      24,  34,  10,   8, -49,  -2, -34,   0,  51,  12,
1734      17,  38,  25, -56,   0,   0, -22,   3,  20,  22,
1735     121,  -9, -50, -10, -40,  40,  43,   9,  58,  12,
1736     -25, -41,  11,   2,  31,  -5,  -8,  19, -15,  32,
1737     -41,  30, -16,  16,  20, -28,   0,  -3,  26, -22,
1738      19,   0,  36,   4,  22,  12,  -6,  -9,  -1, -24,
1739      52,  10, -27,  27, -18,  26,  38,  14,  23, -16,
1740     -44, -33,   3,  20,  45,  10, -20,  15,  -3,  31,
1741     -50,  14, -10,   0,   5, -17, -15,  32,  24, -16,
1742      -1,  15,  55,  20,  14,   8, -29, -12,  -7, -32,
1743      82,  -3, -38, -23, -24,  15,  38,   2,  37,  15,
1744     -39,  -2,  23,  -4,  15, -12,  -3,  17, -15,  58,
1745      -1,  29,   6,   2,  -5, -26,   7,   4,  56,  -9,
1746      35,   3,  25, -33,  32,  36,  17,   7, -15,  -9,
1747      13,  17, -15,  15,  -3,   1,  33,   7,   1, -12,
1748     -58,   5,  15,  13,  29,   3, -16,  13,  -4,  57,
1749     -10,  13,  11, -13, -21, -15,  -9,  40,  55,  -3,
1750      14,  19,  44, -17,  24,  32,  -5,   4, -21, -18,
1751      76,   1, -41,  -9, -19, -12,  41,  17,  55,  18,
1752      -3, -63,  -3, -12,  30,   5,  -3, -12, -31,   0,
1753     -24,  49,  -8,   9,  -1, -33, -12, -29,  27, -18,
1754      37,  21,  34, -17,  -3, -11,  14, -23,  25,  -2,
1755       7,  22, -18,  29,   1, -25,  36,  21,  20,  -9,
1756     -22, -56, -11,   6,  45,  21, -15, -16, -20,  -1,
1757     -33,  34,  -2,  -6, -17, -23, -28,   6,  25, -12,
1758      16,  37,  53,  -1, -11, -15,  -8, -25,  20, -11,
1759      37,   8, -29, -22,  -4, -37,  36,   9,  34,  22,
1760     -17, -24,   8, -18,  15,  -2,   1, -14, -31,  25,
1761      15,  48,  13,  -4, -28, -31,  -5, -21,  57,  -4,
1762      53,  24,  23, -55,   6,  12,  37,  -6,  11,  11,
1763     -31,  28,  -6,  16,  16, -50,  31,  14,   0,  -6,
1764     -36, -17,   0,   0,  29,  14, -11, -18, -20,  25,
1765       6,  33,  19, -20, -43, -21, -21,  14,  55,   0,
1766      32,  40,  42, -39,  -1,   8,  14,  -8,   6,   3,
1767     119, -24, -39, -44, -51,  66, -14,  15,  31, -26,
1768      -1,   0,   7,  16, -19, -28, -19,  22, -26,   4,
1769     -13,  28, -16,  29,   5,  -1,  16, -16,   8, -35,
1770     -10, -42,  -4,  17,  29, -19, -42,  -7,   0, -15,
1771      50,  -3, -16,  -5, -30,  53, -19,  20,  -3, -55,
1772     -19,   8,   0,  34,  -5, -11, -32,  18, -15,   4,
1773     -22,  13, -10,  13,  -9,   8,   0,  19,   7, -29,
1774     -31, -26,  13,  33,  21, -22, -65,  -9,  -4, -23,
1775      79, -17, -27, -56, -36,  41, -19,   8,  10, -22,
1776     -15,  39,  20,   9, -35, -35, -15,  20, -26,  31,
1777      26,  27,   6,  15, -20,   0,  23,  -8,  38, -22,
1778       5, -38, -15, -20,  39,   4, -18,   9, -13,  -1,
1779      10,   3,  -4, -18, -15,  27, -24,  13, -24, -51,
1780     -34,  47,  12,  28, -21, -19, -27,  16, -15,  30,
1781      17,  12,  12,   0, -36,  10,   7,  27,  37, -16,
1782     -15, -22,   3,  -4,  31,   1, -42,   7, -18,  -9,
1783      74, -12, -30, -42, -30,  14, -16,  23,  29, -19,
1784      20, -21,  -7,   1, -19, -17, -14, -10, -43, -27,
1785       3,  48,  -8,  22, -16,  -7,   4, -42,   9, -31,
1786       6, -20,  -6,  -4,   3, -43, -22, -20,  28,   5,
1787       5,   7,  -7,  -4,  -9,   0, -21,  28,  -6, -48,
1788       2, -14, -15,  20,  -5,   0, -27, -14, -32, -28,
1789      -5,  32,  -2,   6, -32,   3, -12,  -5,   8, -25,
1790     -14,  -4,  12,  11,  -4, -47, -45, -22,  22,  -2,
1791      34,  -6, -18, -55, -15, -11, -21,  16,   8, -16,
1792       6,  16,   5,  -4, -35, -24, -10, -12, -43,  -1,
1793      43,  47,  14,   8, -43,  -5,  10, -34,  39, -18,
1794      22, -16, -17, -42,  13, -19,   1,  -3,  14,  20,
1795     -34,  14,   4, -17,   5, -24, -26,  20, -27, -45,
1796     -12,  24,  -2,  13, -21,  -8, -22, -16, -32,  -2,
1797      34,  31,  20,  -7, -58,   5,  -5,   2,  38, -12,
1798       2,  -1,   1, -26,   5, -23, -21,  -6,   8,  11,
1799     124, -13, -21, -23, -62,  23,   0,  43,  57,   8,
1800     -13, -18,  14, -10,   6, -26,  -3,  49, -19,  19,
1801     -31,  27,  -7,   0,  11, -20,  29,  -1,  12, -47,
1802       4, -39,  11,  34,  28,  -9,  -5, -19, -13, -34,
1803      55,   6,   1,  14, -41,  10,  -4,  48,  22, -20,
1804     -31, -10,   5,   7,  20,  -9, -16,  45,  -8,  19,
1805     -40,  12,  -1, -15,  -4, -10,  12,  34,  11, -41,
1806     -16, -24,  30,  49,  20, -13, -28, -22, -18, -43,
1807      84,  -6,  -9, -36, -47,  -1,  -4,  36,  36,  12,
1808     -27,  20,  26, -17,  -9, -33,   1,  47, -19,  46,
1809       9,  27,  15, -13, -15, -18,  35,   6,  42, -33,
1810      20, -36,   1,  -4,  38,  14,  18,  -2, -27, -20,
1811      15,  13,  13,   1, -26, -14,  -9,  41,   1, -16,
1812     -46,  27,  18,   1,   4, -16, -11,  43,  -8,  45,
1813       0,  11,  21, -29, -30,  -8,  19,  42,  41, -28,
1814       0, -20,  20,  11,  30,  10,  -4,  -5, -32, -28,
1815      79,  -2, -12, -22, -42, -28,  -1,  51,  54,  15,
1816       8, -41,   0, -24,   6, -15,   1,  17, -36, -12,
1817     -14,  47,   0,  -6, -11, -26,  16, -27,  13, -43,
1818      22, -18,  10,  12,   2, -34,  15, -33,  13, -13,
1819      10,  18,  10,  15, -21, -41,  -6,  56,  19, -13,
1820      -9, -33,  -9,  -6,  20,   1, -11,  13, -24, -13,
1821     -23,  32,   6, -22, -26, -15,   0,   8,  12, -37,
1822       1,  -2,  28,  27,  -5, -37,  -7, -35,   8, -21,
1823      39,   4,   0, -35, -27, -53,  -6,  44,  33,  18,
1824      -5,  -2,  11, -31,  -9, -22,   6,  15, -36,  13,
1825      25,  46,  23, -20, -37, -24,  23, -19,  43, -29,
1826      38, -14,   0, -26,  12, -10,  38, -16,   0,   0,
1827     -29,  25,  22,   2,  -6, -67, -11,  49,  -1, -10,
1828     -24,   5,   3, -13,   4,  -5,  -6,  11, -25,  12,
1829      16,  31,  28, -36, -53, -13,   6,  16,  42, -24,
1830      17,   1,  18, -10,   4, -13,  15, -18,  -5,  -7,
1831      29, -25, -22,  -2,   6,  67,  11, -49,   1,  10,
1832      24,  -5,  -3,  13,  -4,   5,   6, -11,  25, -12,
1833     -16, -31, -28,  36,  53,  13,  -6, -16, -42,  24,
1834     -17,  -1, -18,  10,  -4,  13, -15,  18,   5,   7,
1835     -39,  -4,   0,  35,  27,  53,   6, -44, -33, -18,
1836       5,   2, -11,  31,   9,  22,  -6, -15,  36, -13,
1837     -25, -46, -23,  20,  37,  24, -23,  19, -43,  29,
1838     -38,  14,   0,  26, -12,  10, -38,  16,   0,   0,
1839     -10, -18, -10, -15,  21,  41,   6, -56, -19,  13,
1840       9,  33,   9,   6, -20,  -1,  11, -13,  24,  13,
1841      23, -32,  -6,  22,  26,  15,   0,  -8, -12,  37,
1842      -1,   2, -28, -27,   5,  37,   7,  35,  -8,  21,
1843     -79,   2,  12,  22,  42,  28,   1, -51, -54, -15,
1844      -8,  41,   0,  24,  -6,  15,  -1, -17,  36,  12,
1845      14, -47,   0,   6,  11,  26, -16,  27, -13,  43,
1846     -22,  18, -10, -12,  -2,  34, -15,  33, -13,  13,
1847     -15, -13, -13,  -1,  26,  14,   9, -41,  -1,  16,
1848      46, -27, -18,  -1,  -4,  16,  11, -43,   8, -45,
1849       0, -11, -21,  29,  30,   8, -19, -42, -41,  28,
1850       0,  20, -20, -11, -30, -10,   4,   5,  32,  28,
1851     -84,   6,   9,  36,  47,   1,   4, -36, -36, -12,
1852      27, -20, -26,  17,   9,  33,  -1, -47,  19, -46,
1853      -9, -27, -15,  13,  15,  18, -35,  -6, -42,  33,
1854     -20,  36,  -1,   4, -38, -14, -18,   2,  27,  20,
1855     -55,  -6,  -1, -14,  41, -10,   4, -48, -22,  20,
1856      31,  10,  -5,  -7, -20,   9,  16, -45,   8, -19,
1857      40, -12,   1,  15,   4,  10, -12, -34, -11,  41,
1858      16,  24, -30, -49, -20,  13,  28,  22,  18,  43,
1859    -124,  13,  21,  23,  62, -23,   0, -43, -57,  -8,
1860      13,  18, -14,  10,  -6,  26,   3, -49,  19, -19,
1861      31, -27,   7,   0, -11,  20, -29,   1, -12,  47,
1862      -4,  39, -11, -34, -28,   9,   5,  19,  13,  34,
1863      34, -14,  -4,  17,  -5,  24,  26, -20,  27,  45,
1864      12, -24,   2, -13,  21,   8,  22,  16,  32,   2,
1865     -34, -31, -20,   7,  58,  -5,   5,  -2, -38,  12,
1866      -2,   1,  -1,  26,  -5,  23,  21,   6,  -8, -11,
1867     -34,   6,  18,  55,  15,  11,  21, -16,  -8,  16,
1868      -6, -16,  -5,   4,  35,  24,  10,  12,  43,   1,
1869     -43, -47, -14,  -8,  43,   5, -10,  34, -39,  18,
1870     -22,  16,  17,  42, -13,  19,  -1,   3, -14, -20,
1871      -5,  -7,   7,   4,   9,   0,  21, -28,   6,  48,
1872      -2,  14,  15, -20,   5,   0,  27,  14,  32,  28,
1873       5, -32,   2,  -6,  32,  -3,  12,   5,  -8,  25,
1874      14,   4, -12, -11,   4,  47,  45,  22, -22,   2,
1875     -74,  12,  30,  42,  30, -14,  16, -23, -29,  19,
1876     -20,  21,   7,  -1,  19,  17,  14,  10,  43,  27,
1877      -3, -48,   8, -22,  16,   7,  -4,  42,  -9,  31,
1878      -6,  20,   6,   4,  -3,  43,  22,  20, -28,  -5,
1879     -10,  -3,   4,  18,  15, -27,  24, -13,  24,  51,
1880      34, -47, -12, -28,  21,  19,  27, -16,  15, -30,
1881     -17, -12, -12,   0,  36, -10,  -7, -27, -37,  16,
1882      15,  22,  -3,   4, -31,  -1,  42,  -7,  18,   9,
1883     -79,  17,  27,  56,  36, -41,  19,  -8, -10,  22,
1884      15, -39, -20,  -9,  35,  35,  15, -20,  26, -31,
1885     -26, -27,  -6, -15,  20,   0, -23,   8, -38,  22,
1886      -5,  38,  15,  20, -39,  -4,  18,  -9,  13,   1,
1887     -50,   3,  16,   5,  30, -53,  19, -20,   3,  55,
1888      19,  -8,   0, -34,   5,  11,  32, -18,  15,  -4,
1889      22, -13,  10, -13,   9,  -8,   0, -19,  -7,  29,
1890      31,  26, -13, -33, -21,  22,  65,   9,   4,  23,
1891    -119,  24,  39,  44,  51, -66,  14, -15, -31,  26,
1892       1,   0,  -7, -16,  19,  28,  19, -22,  26,  -4,
1893      13, -28,  16, -29,  -5,   1, -16,  16,  -8,  35,
1894      10,  42,   4, -17, -29,  19,  42,   7,   0,  15,
1895      31, -28,   6, -16, -16,  50, -31, -14,   0,   6,
1896      36,  17,   0,   0, -29, -14,  11,  18,  20, -25,
1897      -6, -33, -19,  20,  43,  21,  21, -14, -55,   0,
1898     -32, -40, -42,  39,   1,  -8, -14,   8,  -6,  -3,
1899     -37,  -8,  29,  22,   4,  37, -36,  -9, -34, -22,
1900      17,  24,  -8,  18, -15,   2,  -1,  14,  31, -25,
1901     -15, -48, -13,   4,  28,  31,   5,  21, -57,   4,
1902     -53, -24, -23,  55,  -6, -12, -37,   6, -11, -11,
1903      -7, -22,  18, -29,  -1,  25, -36, -21, -20,   9,
1904      22,  56,  11,  -6, -45, -21,  15,  16,  20,   1,
1905      33, -34,   2,   6,  17,  23,  28,  -6, -25,  12,
1906     -16, -37, -53,   1,  11,  15,   8,  25, -20,  11,
1907     -76,  -1,  41,   9,  19,  12, -41, -17, -55, -18,
1908       3,  63,   3,  12, -30,  -5,   3,  12,  31,   0,
1909      24, -49,   8,  -9,   1,  33,  12,  29, -27,  18,
1910     -37, -21, -34,  17,   3,  11, -14,  23, -25,   2,
1911     -13, -17,  15, -15,   3,  -1, -33,  -7,  -1,  12,
1912      58,  -5, -15, -13, -29,  -3,  16, -13,   4, -57,
1913      10, -13, -11,  13,  21,  15,   9, -40, -55,   3,
1914     -14, -19, -44,  17, -24, -32,   5,  -4,  21,  18,
1915     -82,   3,  38,  23,  24, -15, -38,  -2, -37, -15,
1916      39,   2, -23,   4, -15,  12,   3, -17,  15, -58,
1917       1, -29,  -6,  -2,   5,  26,  -7,  -4, -56,   9,
1918     -35,  -3, -25,  33, -32, -36, -17,  -7,  15,   9,
1919     -52, -10,  27, -27,  18, -26, -38, -14, -23,  16,
1920      44,  33,  -3, -20, -45, -10,  20, -15,   3, -31,
1921      50, -14,  10,   0,  -5,  17,  15, -32, -24,  16,
1922       1, -15, -55, -20, -14,  -8,  29,  12,   7,  32,
1923    -121,   9,  50,  10,  40, -40, -43,  -9, -58, -12,
1924      25,  41, -11,  -2, -31,   5,   8, -19,  15, -32,
1925      41, -30,  16, -16, -20,  28,   0,   3, -26,  22,
1926     -19,   0, -36,  -4, -22, -12,   6,   9,   1,  24,
1927      36, -18,  24,   3, -28,   7, -16,  13,  26,  41,
1928      24,  -1,   5, -26,  -3, -12,  27,  46,  27, -10,
1929     -24, -34, -10,  -8,  49,   2,  34,   0, -51, -12,
1930     -17, -38, -25,  56,   0,   0,  22,  -3, -20, -22,
1931     -32,   2,  47,  42,  -7,  -5, -21,  18,  -9,  12,
1932       5,   5,  -2,  -8,  10,   4,  14,  42,  38, -10,
1933     -33, -49,  -5, -24,  33,  12,  17,  35, -52,  -6,
1934     -38, -22,  -7,  72,  -7,  -3,   0,  -6, -25, -30,
1935      -2, -11,  36,  -9, -13, -17, -21,   6,   5,  45,
1936      10,  36,  18, -33, -19, -19,  31,  44,  27,  15,
1937      16, -34,  11, -22,  22,   4,  40,   7, -21,   0,
1938      -1, -35, -36,  18,  10,  24,  46,  12, -34,  -8,
1939     -71,   9,  59,  29,   8, -30, -26,  11, -30,  16,
1940      -8,  44,   9, -14,  -5,  -2,  19,  40,  38,  15,
1941       7, -50,  17, -38,   7,  14,  24,  43, -22,   6,
1942     -22, -19, -17,  34,   2,  20,  23,  10, -39, -16,
1943      -8,  -6,  33,   4,  -7, -44, -18,  21,  23,  48,
1944      46, -24,  -9, -40,  -3,  -1,  32,  13,  11, -43,
1945      -7, -14,  -3, -15,  26,  -3,  21, -26, -50,  -8,
1946       0, -16, -27,  34, -25, -23,  43, -17,   6,  -1,
1947     -77,  13,  56,  43,  13, -57, -23,  26, -11,  19,
1948      27, -16, -17, -22,  10,  15,  19,  10,  22, -43,
1949     -16, -30,   2, -31,  11,   6,   5,   9, -52,  -2,
1950     -20,   0,  -8,  50, -33, -27,  19, -19,   1,  -9,
1951     -47,   0,  45,  -7,   7, -69, -23,  13,   2,  51,
1952      32,  14,   3, -47, -19,  -8,  37,  11,  10, -16,
1953      32, -15,  19, -29,   0,  -1,  28, -18, -20,   4,
1954      16, -13, -38,  -3, -15,   0,  66,   0,  -7,  13,
1955    -116,  20,  68,  30,  28, -83, -28,  18, -32,  22,
1956      13,  21,  -5, -28,  -5,   7,  24,   8,  22, -17,
1957      23, -30,  25, -45, -15,   9,  11,  18, -22,  10,
1958      -4,   2, -19,  12, -23,  -3,  43,  -2, -12,   4,
1959      72, -13, -29, -18,   4,  90,  37, -34,   4,  -1,
1960      13,  -9,  -6,  11,   2,  24, -13,   3,  -7, -11,
1961      -4,   4, -42,  25,  31,  -1,  -8, -29,  -6,  17,
1962     -19,   2, -10,  -6,  38,  22, -42, -19,  -6, -11,
1963       3,   7,  -6,  20,  25,  77,  32, -29, -31, -30,
1964      -4,  -2, -14,  29,  16,  40, -26,   0,   3, -12,
1965     -13, -10, -36,   9,  15,   8, -24,   6,  -7,  22,
1966     -40,  17,   8,   9,  31,  18, -66, -22, -11, -19,
1967      32,  -6, -17, -31,  19,  65,  33, -41, -16,   1,
1968       0,  29,   6,   4, -13,  17,  -9,   1,  -8,  14,
1969      35,   3, -19,  11,   4,   0,  -1, -21,  23,  30,
1970      -3,   5, -20, -44,  48,  46, -19,  -3, -20,   3,
1971     -36,  13,   5,   7,  40,  51,  28, -36, -52, -27,
1972     -18,  36,  -2,  22,   0,  33, -21,  -2,   3,  13,
1973      26, -11, -14,  -4, -10,  10, -18,  14,  22,  36,
1974     -24,  21,  -1, -28,  40,  42, -42,  -5, -25,  -5,
1975      27,  -1, -20, -17,  24,  38,  35, -26,   1,   4,
1976      35, -32, -21,  -3,   2,  35,  -8, -29, -24, -44,
1977      12,  24, -34,  18,   8,  -7, -21, -55,  -5,  21,
1978      -2,  23, -11, -28,  13,  -1, -22, -33,  21,  10,
1979     -41,  18,   2,  21,  45,  24,  30, -21, -33, -24,
1980      17, -24, -29,  15,  16,  51, -21, -33, -13, -45,
1981       3,   8, -28,   2,  -7,   2, -37, -19,  -7,  27,
1982     -22,  39,   7, -12,   5,  -5, -45, -35,  15,   1,
1983     -12,   4,  -8, -29,  39,  12,  30, -33, -19,   8,
1984      21,   6,  -8,  -9, -13,  28,  -4, -31, -24, -18,
1985      52,  23, -12,   4, -18,  -5, -14, -47,  24,  34,
1986      14,  27, -22, -66,  22,  22,   1, -16,   6,  24,
1987     -81,  25,  14,   8,  61,   0,  25, -28, -54, -20,
1988       3,  14, -17,   8,   0,  44, -16, -35, -13, -18,
1989      43,   7,  -6, -11, -33,   4, -30, -11,  22,  40,
1990      -6,  43,  -3, -50,  14,  18, -22, -18,   1,  16,
1991      77,  -2, -11,   1,  -7,  47,  52,  -5,  29,  33,
1992       1, -28,   0, -15,  28,  26,   2,  30,   0,   2,
1993     -22,   4, -33,  -3,  36, -21,   3, -15,  -2,   5,
1994      -4,   4,   6,   9,  37,  31,  -5, -32, -20, -30,
1995       8,  17,  10,  40,  13,  34,  47,   0,  -5,   4,
1996     -16, -21,  -8,   2,  42,  43, -10,  26,  10,   2,
1997     -31, -11, -27, -19,  21, -10, -12,  20,  -3,  11,
1998     -25,  20,  25,  25,  29,  28, -28, -34, -25, -38,
1999      37,   3,   0, -10,   7,  22,  48, -12,   8,  36,
2000     -12,   9,  12, -22,  12,  19,   6,  28,   0,  29,
2001      18,   3, -11, -17,  10, -18,  10,  -7,  27,  18,
2002      11,   7,  -3, -28,  47,  55,  18, -15, -34, -16,
2003     -31,  24,  23,  27,  29,   9,  43,  -8, -26,   7,
2004     -30,  17,   4,  -3,  26,  35,  -5,  24,  10,  28,
2005       9, -12,  -5, -33,  -5,  -8,  -5,  29,  26,  24,
2006      -9,  23,  14, -12,  39,  52,  -5, -18, -39, -24,
2007      32,   8,  -3,   2,  13,  -4,  50,   1,  27,  39,
2008      23, -51, -15, -30,  27,  37,   7,  -1, -17, -29,
2009      -5,  23, -25, -10,  14, -26,  -8, -41,  -1,   9,
2010      13,  26,   5, -12,  12,   7,  14, -45,   6,  -9,
2011     -36,  29,  19,  41,  34, -18,  45,   6,  -8,  10,
2012       5, -43, -23, -11,  42,  53,  -5,  -5,  -6, -30,
2013     -14,   8, -20, -26,  -1, -16, -25,  -4,  -3,  15,
2014      -7,  41,  23,   3,   4,   3,  -8, -48,   1, -17,
2015      -7,  15,   9,  -9,  28, -29,  45,  -5,   6,  43,
2016       9, -12,  -2, -36,  12,  30,  11,  -3, -17,  -3,
2017      34,  22,  -3, -24, -12, -24,  -2, -32,  28,  22,
2018      29,  29,  -5, -50,  21,  31,  38, -29,  -7,   5,
2019     -76,  35,  31,  28,  49, -43,  40,   0, -29,  14,
2020      -8,  -5, -10, -18,  26,  46,   0,  -7,  -6,  -3,
2021      25,   7,   2, -40, -28, -14, -18,   3,  27,  28,
2022       8,  45,  13, -34,  13,  27,  15, -31, -12,  -3,
2023      74, -17,   0, -31, -18,  73,  -5,   0,   3,  -5,
2024      25,  12,  -3,  -1, -22,   3,  -9,  33, -12, -24,
2025       6,   2, -33,   9,  21,   5,  20, -27, -19,  -7,
2026     -34, -37, -34,  22,  44,   0, -41, -29, -17, -21,
2027       5,   3,  21,   7,   2,  60, -10,   5, -32, -34,
2028       7,  20, -11,  16,  -8,  20, -21,  29,  -1, -24,
2029      -2, -13, -27,  -6,   5,  15,   3,   8, -21,  -1,
2030     -55, -21, -15,  38,  37,  -3, -65, -32, -23, -30,
2031      35, -10,  11, -44,  -3,  48, -10,  -6, -17,  -2,
2032      11,  51,   8,  -8, -38,  -3,  -4,  31, -12,   2,
2033      46,   1, -10,  -4,  -5,   7,  26, -19,  10,   5,
2034     -18, -34, -45, -15,  54,  24, -18, -13, -31,  -7,
2035     -33,  10,  34,  -5,  17,  35, -15,  -1, -53, -30,
2036      -6,  59,   0,  10, -24,  13, -17,  27,  -1,   1,
2037      37, -13,  -4, -20, -20,  18,  10,  16,   8,  11,
2038     -39, -18, -26,   0,  46,  20, -41, -15, -37, -15,
2039      29,  -5,   7, -30,   1,  21,  -7,   7,   0,   0,
2040      47,  -9, -18, -15, -22,  14,  -4,   0, -28, -57,
2041      23,  21, -25,   2,  -1,   0,   7, -53, -19,  -3,
2042     -17, -15, -36,   0,  19, -24, -21, -43,   9,   0,
2043     -39,  14,  30,   8,  22,   8, -12,  12, -34, -27,
2044      29,  -2, -26,   2,  -8,  31, -16,  -3, -17, -57,
2045      14,   6, -19, -13, -16,  10,  -8, -17, -20,   2,
2046     -38,   0, -17,  16,  11, -27, -44, -45,   4,  -8,
2047      -9,   1,  20, -43,  17,  -3, -12,   0, -20,   4,
2048      33,  29,  -6, -22, -38,   7,   0,  -1, -29, -30,
2049      63,  21,  -3, -11, -27,   1,  14, -45,  10,   9,
2050      -1, -12, -47, -37,  28,   0,   2, -26,  -4,  13,
2051     -78,  21,  43,  -4,  38, -17, -17,   5, -55, -24,
2052      15,  36, -14,  -4, -24,  24, -12,  -5, -17, -31,
2053      54,   5,   2, -27, -43,  12,  -2,  -9,   9,  15,
2054     -22,   3, -28, -21,  20,  -3, -20, -28,  -9,   5,
2055      80,  -6,  16, -11, -30,  30,   9,  28,  28,  29,
2056      13,  -6,   2, -28,   3,   5,   7,  60,  -5,  -9,
2057     -11,   1, -24, -19,  27, -13,  32, -13, -15, -19,
2058     -19, -35, -17,  39,  43,   9,  -4, -42, -32, -41,
2059      11,  14,  39,  27,  -9,  17,   4,  33,  -6,   0,
2060      -4,   1,  -5, -10,  17,  22,  -5,  57,   5,  -9,
2061     -20, -13, -18, -35,  11,  -3,  16,  22, -17, -13,
2062     -40, -19,   1,  55,  35,   5, -27, -44, -37, -49,
2063      40,   0,  28, -24, -14,   5,   4,  21,   7,  33,
2064       0,  32,  15, -35, -12,  -1,  11,  58,  -5,  16,
2065      28,   0,  -1, -33,   0, -11,  39,  -5,  14,  -6,
2066      -3, -31, -28,   1,  53,  33,  19, -25, -46, -26,
2067     -28,  20,  51,  14,   6,  -7,   0,  26, -27,   4,
2068     -18,  40,   6, -16,   1,  15,   0,  55,   5,  16,
2069      19, -14,   3, -49, -14,  -1,  22,  30,  12,   0,
2070     -24, -15,  -9,  17,  45,  29,  -4, -28, -51, -35,
2071      34,   4,  25, -10,  -9, -21,   7,  36,  26,  36,
2072      35, -28, -12, -42,   3,  16,  12,  28, -21, -42,
2073       5,  21, -16, -26,   4, -19,  19, -39, -15, -15,
2074      -1, -13, -19,  17,  17, -14,  15, -55,  -4, -19,
2075     -34,  25,  48,  28,  11, -34,   2,  41,  -9,   7,
2076      17, -21, -20, -24,  17,  33,   0,  24, -10, -42,
2077      -3,   5, -10, -42, -11,  -8,   3,  -3, -16,  -9,
2078     -22,   2,   0,  33,  10, -18,  -7, -58, -10, -28,
2079      -4,  11,  37, -23,   5, -46,   2,  29,   5,  39,
2080      21,   9,   0, -49, -12,   9,  16,  26, -22, -15,
2081      45,  20,   5, -40, -22, -17,  26, -31,  14,  -2,
2082      14, -10, -30, -20,  27,   9,  39, -39, -18,  -5,
2083     -73,  32,  60,  15,  26, -59,  -2,  33, -30,  10,
2084       3,  17,  -8, -30,   1,  26,   4,  22, -10, -16,
2085      36,   5,  11, -56, -37,  -6,  10,   5,  13,   3,
2086      -6,   5, -11,  -4,  19,   5,  16, -41, -24, -13
2087 };
2088
2089 static const unsigned long ftable1[128]={
2090     314527,  295599,  293848,  280320,  336779,  291703,  297354,  266749,
2091     325815,  305109,  310555,  294891,  349515,  300052,  313812,  278588,
2092     326231,  348357,  322076,  347246,  335655,  327567,  314037,  310198,
2093     343640,  370152,  349471,  382719,  353433,  344311,  338152,  333632,
2094     314810,  285147,  304708,  279643,  319779,  271292,  295149,  257376,
2095     338219,  302387,  335244,  302877,  343236,  285341,  321676,  274547,
2096     316321,  320899,  325378,  333870,  309279,  291473,  302532,  288065,
2097     344907,  351169,  369278,  382224,  334752,  312711,  335747,  316511,
2098     316511,  335747,  312711,  334752,  382224,  369278,  351169,  344907,
2099     288065,  302532,  291473,  309279,  333870,  325378,  320899,  316321,
2100     274547,  321676,  285341,  343236,  302877,  335244,  302387,  338219,
2101     257376,  295149,  271292,  319779,  279643,  304708,  285147,  314810,
2102     333632,  338152,  344311,  353433,  382719,  349471,  370152,  343640,
2103     310198,  314037,  327567,  335655,  347246,  322076,  348357,  326231,
2104     278588,  313812,  300052,  349515,  294891,  310555,  305109,  325815,
2105     266749,  297354,  291703,  336779,  280320,  293848,  295599,  314527
2106 };
2107
2108 static const unsigned long ftable2[128]={
2109     194793,  214093,  222075,  221325,  210734,  211641,  211270,  192855,
2110     198561,  223821,  229577,  234105,  209600,  214643,  211594,  196292,
2111     191722,  221201,  215984,  227369,  222035,  236618,  220978,  209746,
2112     183193,  212405,  205343,  219484,  203652,  219140,  204153,  198495,
2113     163695,  194973,  186057,  210587,  188197,  215336,  197004,  205097,
2114     167090,  204380,  192189,  224334,  189091,  221215,  199256,  211624,
2115     167150,  210594,  190109,  228813,  205750,  260616,  215853,  240851,
2116     162492,  205131,  184310,  223583,  192669,  241298,  202170,  227169,
2117     227169,  202170,  241298,  192669,  223583,  184310,  205131,  162492,
2118     240851,  215853,  260616,  205750,  228813,  190109,  210594,  167150,
2119     211624,  199256,  221215,  189091,  224334,  192189,  204380,  167090,
2120     205097,  197004,  215336,  188197,  210587,  186057,  194973,  163695,
2121     198495,  204153,  219140,  203652,  219484,  205343,  212405,  183193,
2122     209746,  220978,  236618,  222035,  227369,  215984,  221201,  191722,
2123     196292,  211594,  214643,  209600,  234105,  229577,  223821,  198561,
2124     192855,  211270,  211641,  210734,  221325,  222075,  214093,  194793
2125 };
2126
2127 static const short decodeval[63]={
2128         0,     6,    16,    18,    20,    23,    25,    29,
2129        32,    36,    41,    46,    51,    57,    65,    73,
2130        81,    91,   103,   115,   129,   145,   163,   183,
2131       205,   230,   259,   290,   326,   365,   410,   460,
2132       516,   579,   650,   730,   819,   919,  1031,  1157,
2133      1298,  1456,  1634,  1833,  2057,  2308,  2590,  2906,
2134      3261,  3659,  4105,  4606,  5168,  5799,  6507,  7301,
2135      8192,  9191, 10313, 11571, 12983, 14567, 16345
2136 };
2137
2138 static const short decodetable1[127]={
2139     -4041, -4029, -4018, -4008, -3998, -3988, -3977, -3966,
2140     -3954, -3942, -3930, -3918, -3906, -3892, -3879, -3866,
2141     -3852, -3839, -3825, -3810, -3795, -3779, -3764, -3748,
2142     -3731, -3715, -3699, -3683, -3666, -3649, -3631, -3613,
2143     -3594, -3574, -3555, -3534, -3513, -3491, -3468, -3444,
2144     -3420, -3396, -3372, -3346, -3321, -3295, -3268, -3240,
2145     -3212, -3183, -3153, -3122, -3090, -3056, -3021, -2983,
2146     -2944, -2903, -2863, -2817, -2772, -2724, -2676, -2620,
2147     -2565, -2505, -2445, -2387, -2328, -2265, -2202, -2137,
2148     -2072, -2006, -1941, -1874, -1808, -1734, -1660, -1584,
2149     -1508, -1428, -1348, -1267, -1185, -1090,  -994,  -896,
2150      -798,  -699,  -600,  -487,  -374,  -242,  -110,    21,
2151       152,   300,   447,   584,   720,   851,   982,  1105,
2152      1229,  1342,  1456,  1569,  1682,  1799,  1916,  2023,
2153      2130,  2242,  2353,  2474,  2595,  2724,  2853,  2986,
2154      3118,  3240,  3363,  3475,  3588,  3701,  3814
2155 };
2156
2157 static const short decodetable2[63]={
2158     -3091, -2739, -2386, -2129, -1871, -1648, -1425, -1223,
2159     -1021,  -835,  -649,  -483,  -316,  -168,   -20,   123,
2160       267,   406,   544,   677,   810,   937,  1065,  1185,
2161      1305,  1420,  1534,  1645,  1756,  1863,  1970,  2071,
2162      2171,  2265,  2359,  2448,  2536,  2618,  2700,  2777,
2163      2854,  2925,  2996,  3064,  3133,  3198,  3263,  3324,
2164      3386,  3442,  3499,  3551,  3603,  3652,  3701,  3745,
2165      3789,  3829,  3870,  3908,  3947,  3983,  4020
2166 };
2167
2168 static const short decodetable3[63]={
2169     -3525, -3410, -3295, -3188, -3081, -2985, -2890, -2793,
2170     -2696, -2603, -2511, -2419, -2328, -2238, -2149, -2064,
2171     -1979, -1898, -1817, -1737, -1658, -1578, -1498, -1420,
2172     -1341, -1265, -1188, -1110, -1032,  -954,  -876,  -798,
2173      -721,  -641,  -561,  -478,  -394,  -311,  -228,  -141,
2174       -54,    32,   119,   208,   296,   390,   484,   584,
2175       683,   789,   895,  1009,  1123,  1248,  1373,  1512,
2176      1651,  1808,  1965,  2162,  2360,  2607,  2854
2177 };
2178
2179 static const short decodetable4[31]={
2180     -1845, -1451, -1057,  -790,  -522,  -300,   -77,   111,
2181       301,   474,   647,   811,   975,  1130,  1285,  1434,
2182      1582,  1727,  1873,  2018,  2163,  2308,  2452,  2594,
2183      2735,  2876,  3017,  3158,  3299,  3434,  3569
2184 };
2185
2186 static const short decodetable5[31]={
2187     -2691, -2439, -2187, -1987, -1788, -1611, -1435, -1276,
2188     -1118,  -977,  -837,  -704,  -571,  -444,  -316,  -188,
2189       -59,    71,   201,   336,   470,   614,   759,   918,
2190      1077,  1267,  1457,  1682,  1908,  2201,  2495
2191 };
2192
2193 static const short decodetable6[15]={
2194     -1372,  -923,  -474,  -170,   133,   383,   632,   866,
2195      1100,  1335,  1571,  1823,  2075,  2374,  2672
2196 };
2197
2198 static const short decodetable7[15]={
2199     -2389, -2088, -1787, -1509, -1231,  -974,  -717,  -478,
2200      -239,    -2,   234,   502,   770,  1122,  1474
2201 };
2202
2203 static const short decodetable8[15]={
2204     -1569, -1217,  -864,  -580,  -296,   -47,   200,   435,
2205       670,   911,  1151,  1430,  1709,  2047,  2385
2206 };
2207
2208 static const short decodetable9[15]={
2209     -2200, -1904, -1608, -1335, -1062,  -816,  -569,  -344,
2210      -120,   108,   338,   600,   863,  1242,  1621
2211 };
2212
2213 static const short decodetable10[7]={
2214      -617,  -213,   190,   496,   802,  1142,  1483
2215 };
2216
2217 static const short *decodetable[10]={
2218 decodetable1,decodetable2,decodetable3,decodetable4,decodetable5,
2219 decodetable6,decodetable7,decodetable8,decodetable9,decodetable10};
2220
2221 #endif /* FFMPEG_RA144_H */