blob: 56c13e73b7bd48f332fc062ea0c204c98687f955 [file] [log] [blame]
/* ------------------------------------------------------------------
* Copyright (C) 1998-2009 PacketVideo
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied.
* See the License for the specific language governing permissions
* and limitations under the License.
* -------------------------------------------------------------------
*/
/****************************************************************************************
Portions of this file are derived from the following 3GPP standard:
3GPP TS 26.073
ANSI-C code for the Adaptive Multi-Rate (AMR) speech codec
Available from http://www.3gpp.org
(C) 2004, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TTA, TTC)
Permission to distribute, modify and use this file under the standard license
terms listed above has been obtained from the copyright holder.
****************************************************************************************/
/*
Filename: /audio/gsm_amr/c/src/q_plsf_3_tbl.c
------------------------------------------------------------------------------
REVISION HISTORY
Description: Created this file from the reference, q_plsf_3_tbl.tab
Description: Added #ifdef __cplusplus and removed "extern" from table
definition.
Description: Put "extern" back.
Who: Date:
Description:
------------------------------------------------------------------------------
MODULE DESCRIPTION
------------------------------------------------------------------------------
*/
/*----------------------------------------------------------------------------
; INCLUDES
----------------------------------------------------------------------------*/
#include "q_plsf_3_tbl.h"
/*--------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------
; MACROS
; [Define module specific macros here]
----------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------
; DEFINES
; [Include all pre-processor statements here. Include conditional
; compile variables also.]
----------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------
; LOCAL FUNCTION DEFINITIONS
; [List function prototypes here]
----------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------
; LOCAL VARIABLE DEFINITIONS
; [Variable declaration - defined here and used outside this module]
----------------------------------------------------------------------------*/
/*
********************************************************************************
*
* GSM AMR-NB speech codec R98 Version 7.5.0 March 2, 2001
* R99 Version 3.2.0
* REL-4 Version 4.0.0
*
********************************************************************************
*
* File : q_plsf_3.tab
* Purpose : Table for routine LSF VQ.
* $Id $
*
********************************************************************************
*/
/* initalization table for MA predictor in dtx mode */
const Word16 past_rq_init[80] =
{
-258, -318, -439, -634, -656, -773, -711, -502, -268, -193,
-2, 125, 122, -39, -9, 105, 129, 283, 372, 575,
-277, -324, -197, -487, -445, -362, -292, -27, 177, 543,
342, 517, 516, 130, 27, -104, -120, -140, -74, -56,
-564, -943, -1520, -965, -814, -526, -322, -2, 159, 657,
-312, -284, -386, -597, -493, -526, -418, -229, 105, 449,
-557, -870, -1075, -919, -950, -752, -709, -316, 62, 486,
-314, -191, -203, -330, -160, -103, -51, 131, 338, 515
};
const Word16 mean_lsf_3[10] =
{
1546,
2272,
3778,
5488,
6972,
8382,
10047,
11229,
12766,
13714
};
const Word16 pred_fac_3[10] =
{
9556,
10769,
12571,
13292,
14381,
11651,
10588,
9767,
8593,
6484
};
/* first codebook from IS641 */
const Word16 dico1_lsf_3[DICO1_SIZE*3] =
{
6, 82, -131,
154, -56, -735,
183, -65, -265,
9, -210, -361,
113, 718, 1817,
1010, 1214, 1573,
857, 1333, 2276,
827, 1568, 1933,
717, 1989, 2206,
838, 1172, 1823,
721, 1000, 2154,
286, 476, 1509,
-247, -531, 230,
147, -82, 569,
26, -177, -944,
-27, -273, 692,
-164, -264, -183,
224, 790, 1039,
899, 946, 601,
485, 771, 1150,
524, 677, 903,
-140, 375, 778,
410, 676, 429,
301, 530, 1009,
719, 646, 38,
226, 367, 40,
145, -45, -505,
290, 121, -121,
302, 127, 166,
-124, -383, -956,
-358, -455, -977,
715, 878, 894,
978, 923, 211,
477, 272, 64,
188, -78, 17,
-143, -65, 38,
643, 586, 621,
-134, -426, -651,
347, 545, 2820,
1188, 2726, 2442,
142, -80, 1735,
283, 130, 461,
-262, -399, -1145,
-411, 155, 430,
329, 375, 779,
53, -226, -139,
-129, -236, 1682,
285, 744, 1327,
738, 697, 1664,
312, 409, 266,
325, 720, 135,
1, 221, 453,
8, 203, 145,
299, 640, 760,
29, 468, 638,
103, 429, 379,
420, 954, 932,
1326, 1210, 1258,
704, 1012, 1152,
-166, -444, -266,
-316, -130, -376,
191, 1151, 1904,
-240, -543, -1260,
-112, 268, 1207,
70, 1062, 1583,
278, 1360, 1574,
-258, -272, -768,
19, 563, 2240,
-3, -265, 135,
-295, -591, -388,
140, 354, -206,
-260, -504, -795,
-433, -718, -1319,
109, 331, 962,
-429, -87, 652,
-296, 426, 1019,
-239, 775, 851,
489, 1334, 1073,
-334, -332, 25,
543, 1206, 1807,
326, 61, 727,
578, 849, 1405,
-208, -277, 329,
-152, 64, 669,
-434, -678, -727,
-454, -71, 251,
605, 480, 254,
-482, 11, 996,
-289, 395, 486,
722, 1049, 1440,
-30, -316, -786,
-106, -115, -619,
861, 1474, 1412,
1055, 1366, 1184,
812, 1237, 925,
42, -251, -576,
342, 141, -454,
-168, -80, 1359,
-342, -656, -1763,
100, 821, 725,
990, 747, 800,
332, 440, 568,
663, 379, 852,
112, 165, -369,
597, 910, 282,
-8, 834, 1281,
-352, 572, 695,
462, 2246, 1806,
345, 190, 1374,
416, 915, 2166,
168, -82, 280,
-516, -446, 840,
47, 533, 44,
-362, -711, -1143,
22, 193, 1472,
-85, 233, 1813,
-62, 579, 1504,
550, 944, 1749,
723, 650, 1148,
972, 884, 1395,
-425, 643, 0,
1000, 952, 1098,
249, 1446, 672,
-334, -87, 2172,
-554, 1882, 2672,
140, 1826, 1853,
920, 1749, 2590,
1076, 1933, 2038,
-137, -443, -1555,
1269, 1174, 468,
-493, -122, 1521,
-451, 1033, 1214,
482, 1695, 1118,
815, 649, 384,
-446, -692, 107,
-319, -605, -118,
-207, -505, 525,
-468, -12, 2736,
75, 1934, 1305,
880, 2358, 2267,
1285, 1575, 2004,
-48, -304, -1186,
-435, -461, -251,
-366, -404, -547,
-289, -605, -597,
-538, -810, -165,
-120, 3, 356,
639, 1241, 1502,
96, 177, 750,
-435, -585, -1174,
-356, 109, -79,
-485, 288, 2005,
9, 1116, 731,
880, 2134, 946,
-265, 1585, 1065,
1157, 1210, 843,
-498, -668, 431,
374, 321, -229,
1440, 2101, 1381,
449, 461, 1155,
-105, 39, -384,
-263, 367, 182,
-371, -660, 773,
-188, 1151, 971,
1333, 1632, 1435,
774, 1267, 1221,
-482, -832, -1489,
-237, -210, 860,
890, 1615, 1064,
472, 1062, 1192,
185, 1077, 989,
-568, -992, -1704,
-449, -902, -2043,
-142, -377, -458,
-210, -554, -1029,
-11, 1133, 2265,
-329, -675, -893,
-250, 657, 1187,
519, 1510, 1779,
520, 539, 1403,
527, 1421, 1302,
-563, -871, -1248,
-147, -463, 879,
-76, 2334, 2840,
563, 2573, 2385,
632, 1926, 2920,
719, 2023, 1840,
-545, -723, 1108,
129, -125, 884,
1417, 1632, 925,
-94, 1566, 1751,
-341, 1533, 1551,
591, 395, -274,
-76, 981, 2831,
153, 2985, 1844,
1032, 2565, 2749,
1508, 2832, 1879,
791, 1199, 538,
-190, -453, 1489,
-278, -548, 1158,
-245, 1941, 2044,
1024, 1560, 1650,
512, 253, 466,
-62, -323, 1151,
-473, -376, 507,
-433, 1380, 2162,
899, 1943, 1445,
134, 704, 440,
460, 525, -28,
-450, 279, 1338,
0, 971, 252,
-445, -627, -991,
-348, -602, -1424,
398, 712, 1656,
-107, 314, -178,
93, 2226, 2238,
518, 849, 656,
-462, -711, -447,
174, -34, 1191,
-119, 42, 1005,
-372, 274, 758,
1036, 2352, 1838,
675, 1724, 1498,
430, 1286, 2133,
-129, -439, 0,
-373, 800, 2144,
6, 1587, 2478,
478, 596, 2128,
-428, -736, 1505,
385, 178, 980,
139, 449, 1225,
-526, -842, -982,
145, 1554, 1242,
623, 1448, 656,
349, 1016, 1482,
31, -280, 415,
-316, 724, 1641,
360, 1058, 556,
-436, -358, 1201,
-355, 1123, 1939,
401, 1584, 2248,
-527, -1012, 355,
233, 238, 2233,
-550, -897, -639,
-365, -501, 1957,
389, 1860, 1621,
162, 1132, 1264,
-237, 1174, 1390,
-640, -411, 116,
-228, 1694, 2298,
1639, 2186, 2267,
562, 1273, 2658,
323, 338, 1774,
578, 1107, 852,
22, 594, 934,
-143, 718, 446
};
/* second codebook from IS641 */
const Word16 dico2_lsf_3[DICO2_SIZE*3] =
{
50, 71, -9,
-338, -698, -1407,
102, -138, -820,
-310, -469, -1147,
414, 67, -267,
1060, 814, 1441,
1548, 1360, 1272,
1754, 1895, 1661,
2019, 2133, 1820,
1808, 2318, 1845,
644, -93, 454,
858, 329, -136,
489, -258, -128,
-198, -745, -41,
-52, -265, -985,
346, 137, 479,
-1741, -748, -684,
-1163, -1725, -367,
-895, -1145, -784,
-488, -946, -968,
-85, -390, -725,
215, -340, -171,
1020, 916, 1969,
564, 179, 746,
662, 977, 1734,
887, 622, 914,
939, 856, 1165,
309, 688, 803,
917, 161, 570,
118, -20, -283,
-816, -42, 204,
-1228, -325, -462,
-963, -202, -143,
-988, -484, -361,
-702, -978, -477,
-302, -790, -1188,
-100, -786, -1088,
-1054, -947, -1684,
-202, -843, -782,
-1039, -1378, -901,
-624, -110, -85,
356, 213, -10,
-493, 364, 774,
425, 822, 479,
-83, 557, 520,
-992, -1560, -572,
-603, -741, -26,
-502, -638, -903,
209, 306, 147,
-316, -593, -596,
-85, -211, -225,
-918, -529, 117,
233, -439, -738,
1101, 751, 633,
1457, 1716, 1511,
1765, 1457, 910,
1122, 1156, 849,
1354, 868, 470,
-871, -1150, -1796,
-871, -861, -992,
-118, 155, 212,
-1051, -849, -606,
-1117, -1849, -2750,
-1019, -1427, -1869,
370, -184, -414,
959, 493, 104,
958, 1039, 543,
154, 653, 201,
1249, 507, 150,
663, 503, 230,
623, 777, 675,
659, 88, -110,
843, 244, 224,
382, 541, 302,
724, 433, 666,
1166, 734, 341,
-138, 20, -397,
-1183, -424, -46,
-321, -352, -124,
1333, 1021, 1080,
262, 366, 723,
922, 283, -551,
31, -636, -611,
-689, -697, -415,
-952, -779, -201,
-1329, -598, -359,
-953, -1285, 166,
493, 305, 221,
846, 703, 610,
840, 936, 774,
-723, -1324, -1261,
-357, -1025, -1388,
-1096, -1376, -365,
-1416, -1881, -608,
-1798, -1727, -674,
-545, -1173, -703,
678, 786, 148,
-123, 696, 1288,
644, 350, -10,
414, 614, 15,
137, 344, -211,
-814, -1512, -819,
-391, -930, -588,
47, -591, -898,
-909, -1097, -163,
-1272, -1167, -157,
-1464, -1525, -389,
-1274, -1188, -624,
671, 213, 454,
124, -274, -525,
-729, -496, -152,
-1344, 122, 135,
-2905, -589, -394,
-1728, 441, -50,
1476, 904, 787,
316, 236, -440,
-347, 217, 413,
-911, -917, 121,
-455, -932, 202,
-92, -465, -375,
488, 390, 474,
876, 729, 316,
-1815, -1312, -669,
87, 962, 432,
563, -249, -1058,
250, 285, 1105,
1141, 427, 696,
-1038, -1664, -1582,
-948, 346, 160,
-309, -272, -858,
670, 624, 1250,
-944, -408, -666,
-606, -320, -384,
-492, 230, 65,
334, -50, -16,
-16, -690, -1397,
1791, 1716, 1399,
2478, 2063, 1404,
1245, 1471, 1426,
-382, -1037, -2,
173, -398, 1145,
1491, 2024, 1801,
772, 1274, 1506,
1429, 1735, 2001,
1079, 1218, 1273,
-1154, -1851, -1329,
-808, -1133, -1096,
-451, -1033, -1722,
65, 578, -84,
-1476, -2434, -1778,
-765, -1366, -494,
-218, -594, -931,
337, -236, 562,
2357, 2662, 1938,
1489, 1276, 874,
189, 358, 374,
-1519, -2281, -2346,
-967, -1271, -2095,
-628, -1188, -1542,
1661, 1043, 546,
565, 1061, 732,
-64, -836, -434,
-436, -96, 203,
1078, 1216, 1636,
907, 1534, 986,
326, 965, 845,
142, -84, 197,
470, 2379, 1570,
1133, 470, 1214,
395, 1376, 1200,
1125, 1042, 348,
-543, -1234, -376,
-215, -181, 481,
-1947, -1621, -210,
-750, -1185, 390,
29, -399, 27,
820, 1236, 755,
695, 979, 409,
-174, 1197, 1035,
912, 1356, 1846,
-992, -1437, 484,
-1485, -1700, 208,
-412, 1204, 1432,
-271, 896, 1144,
-416, 1777, 1434,
-1696, -2644, -204,
-1789, -1551, 1033,
-1656, -1559, 1303,
-1253, -1589, 1081,
-669, -1095, -66,
-682, 320, -345,
659, 305, 1069,
-1292, -804, -19,
-1635, -1291, 29,
-1683, -497, 71,
-287, -7, -100,
-494, -962, -237,
852, 1881, 1740,
-1217, -1387, 227,
-660, 302, 373,
96, 1087, 1257,
-1074, -1669, 160,
485, 2076, 1798,
-934, -220, 552,
-596, -612, 237,
336, 1720, 879,
643, 629, 434,
1267, 522, 1633,
15, 244, -441,
1475, 717, 184,
1819, 1590, 1709,
988, 261, 937,
2093, 2345, 1520,
2139, 1858, 1606,
-577, -579, -1203,
-956, 135, -488,
-464, 51, -338,
-629, -348, -723,
1146, 2073, 1442,
2192, 1466, 911,
-1444, -1572, -2278,
1400, 710, 1297,
1335, 633, 928,
1434, 2194, 2594,
2422, 2204, 1881,
982, 2242, 1854,
380, 792, 1145,
-63, -539, 414,
-252, -964, -314,
-1261, -683, -780,
-831, -526, -1005,
-1666, -1135, -424,
-1611, -452, -299,
1268, 1048, 642,
1147, 853, 856,
-675, -336, 139,
2268, 1343, 1418,
29, 768, 797,
-1224, 423, 564,
-1318, -1082, 245,
-1302, -812, 573,
-1298, -1617, 646,
-968, 834, 723,
993, 1652, 2027,
-191, -817, 432,
662, 60, 198,
626, 997, 1330,
1648, 1963, 1289,
-1597, -93, -45,
-1088, 37, -84,
1653, 2607, 2337,
1065, 2040, 2377,
1139, 2326, 2118,
859, 357, 1510,
664, 1227, 1099,
479, 1360, 912,
1897, 1754, 2019,
1168, 1909, 1784,
399, 34, 256,
-593, -304, -1053,
547, 1694, 1407,
647, -99, -341,
1492, 1647, 1190,
38, -644, -212,
395, 846, 222,
-704, -765, -716,
-724, -1964, -2804,
-150, 291, -82,
1233, 1459, 1007,
-140, -155, 153,
439, 297, 1568,
-1529, -410, -636,
1536, 455, -237,
-1328, -139, -260,
531, 554, 868,
269, 1264, 606,
-233, 883, 463,
742, 600, -120,
-73, 421, 212,
-439, -58, 804,
-1286, -1241, 728,
294, -490, 50,
-591, -905, -1254,
42, -687, 147,
-25, 273, 596,
-311, 1213, 601,
-754, 849, 584,
429, 607, 587,
-602, -166, 461,
-796, -823, 777,
1380, 910, 1755,
119, 1417, 972,
-219, -880, -1596,
-1049, -1010, 438,
-713, -1379, 78,
0, -447, -1179,
-1136, -1319, -1573,
2248, 1767, 1309,
946, 1583, 1432,
1150, 482, 436,
-469, -1108, 618,
-447, -966, 1088,
-1252, -1515, -114,
-1104, -2008, -579,
210, 613, 497,
-1975, -1437, 642,
-1269, -856, 1011,
-1646, -1185, 1063,
-1555, -672, 1204,
-1692, -1114, 623,
-979, -1326, -1277,
539, -147, 894,
-1354, -897, -434,
888, 475, 428,
153, -384, 338,
-1492, -511, 359,
-974, -1115, -470,
105, -550, 677,
-937, -1145, 877,
380, -260, 210,
1685, 924, 1256,
1775, 1190, 1095,
1419, 631, 533,
627, 299, -347,
-411, -534, 647,
-650, 29, -595,
-378, -1367, 1563,
1402, 1121, 1465,
1089, 1410, 648,
-2096, -1090, -6,
311, -194, -869,
-639, -831, 416,
-1162, -1224, 1349,
-1247, -941, 1813,
-2193, -1987, 453,
-619, -1367, -956,
-1606, -1972, -1507,
-1175, -1057, -1104,
-377, 601, 201,
1876, 825, 374,
-430, -1323, 29,
-1397, -1249, -1331,
-1007, -1504, 960,
-1401, -2009, 197,
-1379, -1949, -236,
-1077, 123, 422,
615, 1269, 546,
-306, 1526, 904,
1194, 1788, 1177,
-626, -884, -1526,
199, 766, 1504,
-1065, 862, 197,
-1034, -1773, -887,
-800, 145, 599,
-1134, -519, 626,
-1205, -1926, 500,
-910, -1041, -1395,
-1476, -1567, -969,
-523, 842, 34,
1794, 646, 862,
-1207, -1888, -1002,
-78, -9, -672,
1044, 759, 80,
-600, 1139, 1019,
57, 2000, 1422,
-833, 1414, 1121,
-1202, 1630, 1260,
-461, 1420, 1244,
1537, 975, 253,
-283, 324, -359,
599, -195, 106,
588, 62, -587,
-757, 645, 205,
51, 1201, 758,
-1209, 673, -390,
-624, 1581, 941,
-151, 1023, 735,
2820, 1301, 690,
-302, 524, -99,
-900, -1588, -1189,
1084, 251, 238,
2014, 1792, 1010,
1245, 1633, 1741,
-1227, -1540, -1208,
-621, 456, -109,
40, -65, 788,
-805, -699, -1350,
-583, 904, 832,
-801, 532, 594,
1972, 1408, 1351,
-1177, -1880, -2114,
-773, 568, 948,
-1015, 1079, 1260,
-1111, 482, -130,
1778, 1044, 780,
-1491, 245, 912,
-316, -1141, -917,
-536, -1442, -2346,
-785, -1546, -1988,
-2003, 257, 909,
-1849, -633, -1209,
-1538, -1918, -1054,
1606, 2239, 1576,
-567, -1500, -1544,
-1279, 195, 1369,
-817, 293, 1219,
-525, 630, 1197,
-1698, -2425, -1840,
-303, 731, 747,
-1169, -251, 269,
-950, -75, 1684,
-1182, -453, 1005,
-1599, 585, 378,
-2075, -571, -427,
-529, -1159, -1171,
-283, -205, -564,
-796, 1246, 717,
2277, 927, 539,
-454, 559, 440,
-717, 1460, 1615,
-1030, 1052, 1610,
-1169, -138, 847,
226, 39, -612,
-1251, -106, -729,
-651, 968, 1302,
-714, -636, 1727,
353, 1069, 410,
-798, -156, 1099,
-574, 918, 446,
-1310, 1012, 466,
1408, 1591, 765,
1429, 1380, 1757,
1949, 1956, 2378,
1578, 2047, 2148,
916, 98, -7,
1893, 1418, 2141,
348, 1405, 1579,
152, 1134, 1801,
-267, 154, 1395,
-1166, 469, 1054,
-1142, -405, -1073,
-1341, -2264, -1581,
-364, 869, 1706,
-1162, 549, 1550,
-1225, -1932, -1666,
-1485, -1977, -2055,
-1727, -906, -98,
-1897, 233, 1492,
892, 108, -331,
-1728, -1170, -1700,
-1060, 1980, 1790,
-1070, -1741, -1909,
-11, 1539, 1317,
-1600, 94, 497,
421, 443, -197,
-1578, -349, -994,
-599, -539, 1140,
-965, -1419, -129,
-1341, 175, -447,
-375, 1311, 2055,
-371, -650, -307,
-1073, 605, 365,
-2057, -113, 430,
652, 914, 967,
-1012, -1586, -2323,
1505, 1248, 559,
262, -486, -401,
-1727, 1342, 1546,
50, 56, 432,
-330, 119, -604,
-1517, -1080, -810,
946, 1127, 1055,
-1400, -1703, -1712,
-1270, -704, -1317,
807, 1821, 1143,
2760, 1606, 2171,
1120, 409, -150,
-147, 404, 959,
2439, 1911, 2189,
-906, -141, -866,
-904, -142, -458,
-557, -708, -1679,
-830, -1431, -1583,
-1842, -1346, -1086,
-1604, -272, 915,
-1196, 772, 1056,
-638, -1234, -1897,
-500, -81, -822,
-1289, -1613, -735,
-117, 785, 168,
-1090, 1133, 922,
-1096, -746, 1384,
287, -547, -1063,
-1376, -2201, -1204,
-2176, -1570, -1757,
-1511, -2241, -771,
-1737, 1099, 830,
-1588, 724, 1243,
-1542, 693, 805,
-1690, -240, 1665,
-1700, -4, -668,
2149, 816, 1042,
-818, -1841, 22,
-764, -507, 449,
-1151, -617, 289,
-843, -1596, -240,
498, -234, -657,
-752, 480, 1678,
-319, -481, 193,
-811, 171, -119,
-2128, -202, -848,
1717, 1140, 1700
};
/* third codebook from IS641 */
const Word16 dico3_lsf_3[DICO3_SIZE*4] =
{
67, -17, 66, -12,
-1690, -581, -104, -272,
-1076, -1186, -1845, -376,
-1140, -926, -420, -58,
-259, -656, -1134, -553,
1788, 1227, 455, 129,
462, 441, -240, -528,
840, 514, 130, -75,
1114, 623, 153, 216,
1068, 564, -6, -276,
1119, 727, 190, -68,
704, 306, 119, -264,
329, 61, -100, 156,
364, 123, 183, -208,
-171, -123, 220, -65,
-306, -62, 402, 17,
-660, -938, -266, 0,
385, 235, 276, 285,
320, 268, -336, -200,
-724, 17, -84, 381,
-544, 429, 494, 519,
-117, 288, 304, 329,
643, 157, 701, 508,
1200, 625, 796, 608,
998, 421, 492, 632,
1204, 780, 446, 132,
1257, 844, 547, 449,
829, 658, 541, 470,
1132, 1258, 918, 639,
547, 51, 423, 279,
9, 392, 83, 94,
542, 543, 229, -147,
-198, 129, 194, -185,
-863, -1321, -302, 30,
-597, -629, -19, 114,
-900, -1081, 466, 353,
-1483, -1573, 15, -143,
-1708, -2059, -751, 196,
-1876, -2067, -642, -258,
-2335, -1470, -450, -564,
-584, -186, -872, -414,
-1805, -988, -1125, -1310,
-726, -1129, 28, 169,
-1039, -864, -718, -246,
484, 36, -233, -49,
265, 67, 289, 467,
178, 543, 810, 540,
84, 282, 672, 703,
-975, -777, 129, 287,
-938, -227, 955, 595,
-1617, -289, 836, 649,
-1847, -215, 1106, 718,
-2034, -1085, 650, 440,
-2101, -529, 907, 575,
-2011, -336, 670, 204,
-2389, -692, 360, 137,
-2156, -2204, -9, 280,
-266, 119, 39, 193,
78, -59, -120, 226,
-975, -858, -781, -1095,
-619, -413, -451, -842,
-1216, -1321, -813, -883,
-1376, -1615, -394, -428,
-737, -1113, -549, -790,
-880, -975, -967, -642,
-985, -886, -1273, -1361,
-473, -804, -1401, -1407,
160, -265, -919, -275,
-248, -250, -718, -380,
97, -103, -375, -229,
-415, -193, -135, -555,
628, 361, 119, 216,
579, 364, 391, 209,
634, 522, -154, -148,
526, 389, 170, 33,
105, 267, 64, 380,
-1503, -1000, -30, -369,
-1070, 58, 647, 223,
-1520, -291, 621, 307,
-1531, 156, 762, 404,
-2029, 141, 734, 499,
-1849, -650, 306, 512,
-187, -104, -59, 438,
134, -230, 156, -186,
-61, -260, -16, 10,
-569, -3, -421, -297,
-1725, -521, -346, 178,
-1362, -59, -44, 157,
-2146, -461, -470, -349,
-2170, -1, -369, -121,
-1579, -373, -900, -1015,
-1117, -591, -613, -784,
-561, 122, -75, -449,
-4, -171, -123, -372,
192, 168, -76, -132,
252, -107, 340, 210,
392, 509, 272, 181,
-109, 145, 218, 119,
-416, -263, 485, 265,
-181, -8, -286, 226,
-244, -218, 69, -290,
-158, 191, -1, -64,
-592, -90, 213, -96,
255, 435, 178, -80,
-369, -18, -33, -80,
-42, 415, 140, -222,
1143, 651, 649, 329,
767, 556, 249, 235,
948, 413, 442, 279,
141, 339, 356, 557,
-470, -170, 99, 237,
-569, -800, 352, 565,
282, 473, 470, 332,
-199, -690, -1284, -917,
-193, -426, -800, -1122,
-26, -371, -490, -193,
637, 595, 519, 330,
408, -115, 79, 12,
477, 87, -103, -376,
-666, -347, -277, -291,
-510, -481, 169, 297,
-829, -738, -205, -171,
-320, -540, 328, 283,
-859, -958, 442, -2,
556, 686, 130, 56,
1383, 1012, 755, 427,
612, 741, 628, 553,
-339, -796, 134, 277,
-633, -1085, -2, -246,
-880, -1035, -1607, -1064,
-994, -474, -1138, -488,
-414, -795, 73, -206,
-8, -139, 439, 204,
-176, -578, 23, 131,
-269, -757, -191, 245,
-109, -338, 112, 316,
120, -406, -118, 611,
-180, -186, -645, 115,
-173, 34, -518, -489,
-151, 61, -583, -844,
220, -138, -681, -1020,
391, -17, -598, -321,
157, -295, 129, 155,
-926, -875, -987, 285,
241, -83, -125, -125,
620, 597, 432, 92,
393, 78, 409, 61,
-393, -739, -413, -748,
83, 54, 361, 27,
-1084, 130, -337, -694,
-1565, 297, 318, -19,
-1873, 36, 51, -317,
-2323, -246, 231, -84,
-2306, -783, 40, -179,
-2233, -930, -474, -462,
-754, -86, -288, -626,
-2411, -455, -63, 171,
-1099, -1094, -26, -143,
-1193, -455, -406, -381,
-605, -210, -96, -51,
-580, -476, -276, -15,
-1195, -634, -1203, -881,
-378, -221, -669, -952,
594, 178, -403, -676,
763, 327, 601, 290,
172, 300, 203, 157,
-56, -336, 356, 24,
-228, -296, -259, -29,
-186, 263, 416, 14,
-353, 373, -12, -216,
257, 96, 174, 57,
-1526, -616, -954, -499,
-497, -152, -333, 125,
105, 200, 179, -97,
-331, -224, 765, 697,
760, 256, 301, 59,
455, -85, 204, 288,
-514, 240, 251, -109,
256, 417, -34, -413,
101, 430, 384, 156,
-31, -10, 206, 426,
589, 145, 143, 71,
808, 906, 333, 349,
986, 938, 589, 331,
1300, 824, 187, 509,
1062, 653, 379, 466,
1462, 937, 401, 274,
787, 861, 265, 2,
609, 553, 28, 305,
926, 340, 106, 386,
241, -267, -147, 225,
-178, -534, 347, 502,
-643, -381, 397, 30,
-651, -733, -435, 398,
-407, -726, -484, -248,
-789, -914, -438, -476,
-498, -390, 75, -295,
-964, -590, -606, 150,
-121, -49, -155, -78,
935, 550, 389, 38,
-321, 127, 424, 315,
-285, -113, 283, 259,
658, 203, 322, 486,
903, 505, 748, 417,
611, 423, 555, 512,
239, -83, -578, -19,
-339, -731, 349, 13,
-934, -1399, -114, -360,
107, 692, 182, 90,
-1243, -1538, -1551, -725,
-568, -903, -1363, -525,
-517, -853, -861, -1004,
-168, -690, -835, 63,
-137, -556, -547, 144,
-286, -817, 485, 319,
-147, -408, 526, 246,
-347, -434, 297, -28,
-290, -471, -1110, -1285,
-460, -359, -988, -794,
1347, 1299, 690, 523,
1216, 1068, 1094, 757,
825, 1140, 752, 494,
1252, 1365, 1195, 898,
521, 1053, 532, 432,
-334, -216, -313, -263,
-160, 52, -472, -155,
127, 136, -380, 44,
851, 410, -162, -489,
123, -255, -796, -667,
1090, 917, 789, 493,
1397, 1197, 558, 202,
-51, -118, -342, -701,
83, 108, -42, -441,
61, 95, 287, 256,
-27, 89, 524, 531,
351, 227, 592, 545,
697, 155, -164, 307,
638, 274, -489, -50,
754, 240, -166, -124,
-116, -579, -1212, -63,
190, -295, -1040, -1296,
147, -376, -177, -113,
841, 1241, 1051, 668,
2, 293, 551, 304,
-1096, -953, -248, 376,
-750, -965, 87, 516,
-275, -516, 689, 391,
-379, -643, 876, 594,
-390, -1013, -645, 573,
-107, -568, -689, -826,
-1025, -27, -328, -203,
861, 749, 548, 233,
-1660, -1043, 451, 108,
-660, -620, 430, 236,
21, -396, -1158, -631,
1372, 1298, 967, 577,
1125, 1125, 589, 454,
-323, -865, -467, 153,
-468, -699, -804, -509,
-392, -718, -204, -35,
-603, -1093, -567, -162,
-505, -1004, -102, 350,
219, 224, 423, 252,
395, 591, 608, 363,
-746, -96, 373, 172,
171, 295, 714, 339,
233, 77, 107, 277,
157, 153, -499, -356,
1547, 1073, 576, 494,
-292, -339, -504, -592,
-903, -72, -619, -481,
-1594, -1117, -567, -254,
-793, -507, -564, -291,
-492, -532, 502, 560,
-382, 427, 600, 230,
-227, 477, 251, 75,
285, 842, 813, 476,
-1310, -1333, 186, 377,
-587, -917, 643, 381,
-1186, -553, 411, 82,
-1127, -820, -174, -540,
-604, 119, 543, 205,
-380, 657, 909, 567,
112, -298, -374, 114,
-857, -251, 56, 159,
401, 345, -34, -140,
-111, -607, 41, 614,
355, -114, -77, 474,
578, 56, 1450, 924,
1098, 1420, 741, 400,
246, 22, 588, 313,
-121, 327, 831, 472,
-1138, -608, 856, 552,
-1241, -1072, 638, 600,
-358, 254, -333, -303,
-646, 739, 358, 74,
1226, 1671, 1221, 849,
2241, 1624, 983, 636,
1841, 1477, 749, 384,
350, 263, 87, 128,
-1902, -941, -144, -64,
-1734, -255, 288, -31,
-2644, -1238, 366, 235,
-1643, -1092, -1344, -304,
-541, -1075, -1116, 123,
-1178, -252, -816, -180,
-1016, 533, 565, 233,
-487, -430, -188, 334,
867, 1236, 534, 171,
-1590, -1607, 635, 630,
-2196, 310, 924, 412,
-2358, -328, 956, 529,
-2639, -377, 630, 278,
-2602, 317, 799, 299,
-2406, 133, 340, 31,
-2156, -1468, 131, 125,
-1184, -490, -139, 46,
-744, 447, 891, 564,
67, -451, 646, 604,
-553, -429, -876, 396,
162, -66, 1305, 915,
479, 579, 1088, 794,
450, 278, 566, 324,
-1057, -154, 148, -177,
-2545, 168, 1070, 592,
-2351, -42, 819, 345,
-2344, -707, 721, 250,
-2175, -1497, -309, 122,
-78, -73, 120, 173,
-4, 262, -263, -261,
-431, -64, -405, -732,
-2609, 116, -83, -193,
-1525, -944, -477, -725,
-508, 307, 170, 172,
832, 417, 832, 686,
-225, 177, 894, 818,
-482, -389, 1279, 1039,
-383, 201, -350, 40,
730, 635, 226, 526,
503, 462, 338, 398,
535, 714, 40, -282,
1482, 1471, 1085, 731,
1561, 1072, 909, 693,
1419, 1282, 889, 879,
1153, 728, 1186, 840,
-226, 1130, 949, 689,
-494, -986, -1556, -128,
-568, -721, -713, -26,
317, 524, 70, 135,
-405, -865, -1766, -652,
-174, -801, 885, 773,
-153, -91, 1099, 751,
-506, -1149, 853, 646,
241, 782, 519, 539,
1853, 1700, 1101, 684,
-1249, -1486, -464, 188,
-893, -1409, -1312, -341,
-135, 438, -175, 18,
1111, 976, 319, 208,
-1430, -1768, 83, 458,
-530, -1000, 307, 129,
-840, -15, -29, -356,
-911, -924, -1147, -242,
-119, -528, 127, -133,
-761, -765, 190, -83,
-315, 895, 522, 231,
-222, 102, -63, -428,
316, 699, 379, 70,
25, 716, 314, -108,
507, 874, 566, 238,
108, 941, 519, 195,
425, -60, -427, 257,
139, -103, -630, 446,
334, 370, 412, 48,
-172, -690, -283, 557,
187, -286, 158, 483,
140, 270, -344, -631,
924, 579, -116, 132,
142, 466, -68, -64,
230, -145, -302, -542,
-803, -912, 1018, 737,
-773, 1015, 630, 297,
-2596, 95, 445, 336,
-2122, 491, 510, 191,
-1253, 161, -2, -324,
-1450, -633, -712, -105,
-842, -254, -411, 100,
-640, -290, 1010, 763,
-650, 313, 1169, 730,
140, 505, 1030, 766,
772, 287, 1067, 823,
495, 749, 305, 323,
-164, 462, 78, 399,
-342, -874, 69, 597,
-16, 620, 621, 337,
-138, -444, -265, 218,
84, -450, 953, 666,
-222, -803, 541, 604,
-921, -1376, 244, 116,
-841, -723, 630, 588,
140, 663, 294, 368,
935, 1046, 881, 759,
1746, 1464, 916, 628,
436, 963, 281, 1,
-119, 74, 542, 213,
1, -567, 301, 241,
260, 435, 222, 396,
936, 957, 1108, 703,
510, 506, 808, 478,
601, 694, 960, 620,
972, 741, 980, 600,
834, 717, 767, 684,
643, 972, 935, 638,
501, 661, 720, 851,
-105, -632, -303, -117,
-429, 130, 789, 442,
-522, -188, 704, 373,
-759, 42, 814, 523,
-531, -1137, 373, 578,
-682, -1203, -455, 285,
-1163, -1577, -1098, 44,
81, -82, 712, 363,
477, 246, 954, 622,
1604, 1622, 1277, 891,
1409, 859, 924, 892,
774, 1041, 947, 1142,
40, -546, -75, 288,
-616, -106, -697, -26,
-169, -160, -891, -739,
-279, -384, -1029, -350,
1781, 1308, 1046, 816,
1580, 1533, 1472, 1178,
1505, 1076, 1216, 899,
890, 904, 564, 654,
920, 692, 1021, 856,
-493, 132, 177, 505,
71, 195, -28, 97,
456, 351, -164, 88,
439, 278, -40, 350,
1395, 949, 234, -95,
-805, -472, 38, -163,
367, -98, 489, 523,
1025, 1178, 1212, 906,
319, 1314, 814, 461,
-123, -543, -804, 447,
-748, -324, -897, -1127,
-737, -501, -789, -713,
715, 777, 1239, 922,
1949, 1939, 1368, 865,
730, 880, 758, 388,
-871, 454, 17, -251,
-381, -810, -1583, 239,
-521, -966, -792, 259,
-890, -1358, -770, -73,
166, 349, -212, 323,
-840, -301, 473, 435,
-679, -464, 728, 351,
-156, -199, 667, 432,
29, -252, 415, 480,
-731, -379, 145, 559,
-528, -631, -1158, -159,
445, 273, 123, 639,
373, -126, 800, 568,
84, -162, 720, 712,
-830, -536, -185, 222,
408, 452, 501, 771,
-897, -1355, -67, 442,
-792, -1406, 566, 602,
167, -326, 509, 330,
-95, -626, -730, -344,
1668, 1217, 779, 455,
1316, 828, 584, 719,
404, -31, 1013, 789,
89, 107, 891, 549,
871, 1581, 917, 671,
866, 1479, 1289, 854,
391, 1068, 1122, 812,
78, -562, 345, 563,
429, -103, 417, 787,
-122, -437, 411, 788,
-913, -417, 602, 754,
-226, -16, 151, 760,
-700, 118, -104, -14,
-1128, 48, 284, 393,
-390, -419, -639, -116,
-910, 306, 316, -13,
1207, 984, 821, 669,
-1195, -693, 140, -213,
-884, -416, -199, -558,
-616, 245, -404, -664,
262, 56, -617, -724,
-85, -491, -320, -656,
-570, -831, -129, -528,
-1506, -63, -367, -385,
-358, -321, 4, 51,
-366, -214, 319, 511,
146, 671, -17, -291,
-110, 464, -139, -496,
-202, 220, -312, -631,
-660, -73, -655, -820,
-662, -653, -1288, -857,
-430, -953, -959, -264,
-49, -468, -72, -381,
-350, -563, -193, -407,
55, -408, -803, 11,
-309, 649, 188, -198,
-512, 461, -79, -458,
-1318, -263, -134, -523,
-1657, -435, -495, -765,
57, -347, -414, 434,
-1141, -242, -664, -857,
34, -68, -707, -338
};
/* third codebook for MR475, MR515 */
const Word16 mr515_3_lsf[MR515_3_SIZE*4] =
{
419, 163, -30, -262,
-455, -789, -1430, -721,
1006, 664, 269, 25,
619, 260, 183, 96,
-968, -1358, -388, 135,
-693, 835, 456, 154,
1105, 703, 569, 363,
1625, 1326, 985, 748,
-220, 219, 76, -208,
-1455, -1662, 49, 149,
-964, -172, -752, -336,
625, 209, -250, -66,
-1017, -838, -2, 317,
-2168, -1485, -138, 123,
-1876, -2099, -521, 85,
-967, -366, -695, -881,
-921, -1011, -763, -949,
-124, -256, -352, -660,
178, 463, 354, 304,
-1744, -591, -282, 79,
-2249, 175, 867, 499,
-138, -180, -181, -21,
-2291, -1241, -460, -520,
-771, 451, -10, -308,
271, -65, 4, 214,
-279, -435, -43, -348,
-670, 35, -65, -211,
806, 535, 85, 297,
57, 239, 722, 493,
225, 661, 840, 547,
-540, -376, 14, 349,
469, 721, 331, 162,
-544, -752, -62, -10,
398, -88, 724, 701,
-19, -533, -94, 601,
136, -71, -681, -747,
-166, -344, 261, -50,
161, -52, 485, 337,
-1675, 50, 190, -93,
-2282, -231, -194, -82,
-95, -595, -154, 128,
894, 501, 588, 457,
-345, 206, 122, 110,
-631, -227, -569, 3,
408, 239, 397, 226,
-197, -2, 128, 491,
1281, 904, 292, 215,
538, 306, 259, 509,
-677, -1047, 13, 321,
-679, -588, -358, -212,
-558, 243, 646, 479,
486, 342, 634, 532,
107, 802, 331, 136,
-112, -398, -1031, -286,
-326, -705, 288, 272,
1299, 1144, 1178, 860,
-423, 121, -385, -148,
-295, -302, -834, -819,
16, -24, -201, -476,
555, 91, -245, 294,
-38, -379, -962, -1221,
-1191, -1518, -273, -395,
-390, -1013, -645, 573,
-1843, -1030, 505, 468,
744, 947, 609, 493,
-689, -1172, -628, -135,
-1026, 195, 411, 196,
1582, 1147, 575, 337,
-1239, -777, -648, -142,
595, 825, 967, 735,
-1206, -970, -81, -342,
-745, 13, -72, 375,
454, 19, 1407, 921,
-1647, -172, 861, 562,
928, 1537, 1063, 740,
-2472, -952, 264, 82,
-502, -965, -1334, 123,
867, 1236, 534, 171,
-2320, -460, 780, 363,
-1190, -617, 252, -61,
-174, 34, 1011, 788,
-2333, 247, 423, 153,
-16, -355, 262, 449,
-1576, -1073, -544, -371,
-615, -305, 1051, 805,
687, 528, 6, -182,
935, 875, 1002, 809,
199, 257, 126, 76,
-584, -1138, 599, 556,
-1105, -1391, -1591, -519,
-977, -1325, 108, 347,
-722, -975, 365, 101,
-145, 681, 249, -153,
0, -334, -570, 159,
412, 285, -336, -617,
-953, -966, 887, 689,
-1251, 84, -185, -398,
-592, 433, 1044, 653,
85, 329, -40, 361,
-433, -705, 466, 574,
-154, 654, 592, 290,
-167, 72, 349, 175,
674, 297, 977, 720,
1235, 1204, 757, 488,
-400, -269, 538, 372,
-1350, -1387, -1194, -91,
1262, 876, 775, 700,
-599, -38, -430, -722,
1976, 1630, 991, 608,
111, 276, -226, -96,
-947, -388, -11, -7,
-303, -531, -839, 338,
1734, 1710, 1405, 1013,
-516, -855, -645, 210,
-688, -416, 513, 230,
-822, -637, -1146, -320,
-952, -658, -694, 183,
-114, -623, 818, 674,
-191, -204, 731, 635,
51, 1221, 883, 576,
-954, -431, 826, 598,
-342, -755, -900, -407,
-1126, -354, -206, -512,
-547, -810, -357, -620,
66, 515, -73, -410,
-872, -945, -1444, -1227,
191, -17, -544, -231,
-1540, -544, -901, -886
};
/* first codebook for MR795 */
const Word16 mr795_1_lsf[MR795_1_SIZE*3] =
{
-890, -1550, -2541,
-819, -970, 175,
-826, -1234, -762,
-599, -22, 634,
-811, -987, -902,
-323, 203, 26,
-383, -235, -781,
-399, 1262, 906,
-932, -1399, -1380,
-624, 93, 87,
-414, -539, -691,
37, 633, 510,
-387, -476, -1330,
399, 66, 263,
-407, -49, -335,
-417, 1041, 1865,
-779, -1089, -1440,
-746, -858, 832,
-581, -759, -371,
-673, -506, 2088,
-560, -634, -1179,
271, 241, 14,
-438, -244, -397,
463, 1202, 1047,
-606, -797, -1438,
-51, -323, 481,
-224, -584, -527,
494, 881, 682,
-433, -306, -1002,
554, 659, 222,
171, -160, -353,
681, 1798, 1565,
-852, -1181, -1695,
-336, -666, 114,
-581, -756, -744,
-195, 375, 497,
-465, -804, -1098,
154, 282, -131,
-50, -191, -719,
323, 732, 1542,
-722, -819, -1404,
105, -250, 185,
-178, -502, -742,
321, 510, 1111,
-323, -567, -966,
127, 484, 338,
-160, 52, -338,
732, 1367, 1554,
-626, -802, -1696,
-286, -586, 676,
-695, -343, -370,
-490, 295, 1893,
-630, -574, -1014,
-80, 645, -69,
-6, -318, -364,
782, 1450, 1038,
-313, -733, -1395,
120, 60, 477,
-264, -585, -123,
711, 1245, 633,
-91, -355, -1016,
771, 758, 261,
253, 81, -474,
930, 2215, 1720,
-808, -1099, -1925,
-560, -782, 169,
-804, -1074, -188,
-626, -55, 1405,
-694, -716, -1194,
-660, 354, 329,
-514, -55, -543,
366, 1033, 1182,
-658, -959, -1357,
-55, -184, 93,
-605, -286, -662,
404, 449, 827,
-286, -350, -1263,
628, 306, 227,
-16, 147, -623,
186, 923, 2146,
-674, -890, -1606,
-443, -228, 339,
-369, -790, -409,
231, 86, 1469,
-448, -581, -1061,
594, 450, -177,
-124, -170, -447,
671, 1159, 1404,
-476, -667, -1511,
-77, -138, 716,
-177, -372, -381,
451, 934, 915,
-250, -432, -822,
272, 828, 446,
26, 19, -31,
698, 1692, 2168,
-646, -977, -1924,
-179, -473, 268,
-379, -745, -691,
11, 127, 1033,
-488, -917, -825,
61, 323, 135,
147, -145, -686,
685, 786, 1682,
-506, -848, -1297,
35, 90, 222,
-23, -346, -670,
455, 591, 1287,
-203, -593, -1086,
652, 352, 437,
39, 63, -457,
841, 1265, 2105,
-520, -882, -1584,
-328, -711, 1421,
-596, -342, -70,
209, 173, 1928,
-423, -598, -921,
421, 605, -38,
-2, -245, -127,
896, 1969, 1135,
-379, -518, -1579,
173, 118, 753,
-55, -381, -52,
985, 1021, 753,
-2, -291, -891,
753, 992, 423,
264, 131, -196,
895, 2274, 2543,
-635, -1088, -2499,
-529, -982, 526,
-764, -830, -548,
-436, 316, 599,
-675, -940, -746,
-57, 236, -11,
-201, -81, -798,
16, 845, 1558,
-737, -985, -1212,
-468, 17, 290,
-279, -584, -700,
183, 822, 705,
-265, -492, -1187,
421, 152, 468,
-390, 166, -268,
39, 1550, 1868,
-635, -966, -1571,
-453, -492, 910,
-284, -1027, -75,
-181, -133, 1852,
-445, -624, -1174,
420, 367, -49,
-389, -212, -169,
707, 1073, 1208,
-539, -710, -1449,
83, -163, 484,
-236, -543, -355,
338, 1175, 814,
-246, -309, -958,
606, 760, 60,
166, -8, -163,
-306, 1849, 2563,
-747, -1025, -1783,
-419, -446, 209,
-718, -566, -534,
-506, 693, 857,
-463, -697, -1082,
325, 431, -206,
-15, -8, -763,
545, 919, 1518,
-611, -783, -1313,
256, -55, 208,
-165, -348, -662,
321, 680, 930,
-326, -429, -951,
484, 446, 570,
-197, 72, -73,
909, 1455, 1741,
-563, -737, -1974,
-124, -416, 718,
-478, -404, -314,
-16, 446, 1636,
-551, -537, -750,
-58, 638, 214,
55, -185, -271,
1148, 1301, 1212,
-483, -671, -1264,
117, 285, 543,
-204, -391, -111,
513, 1538, 854,
-114, -190, -978,
877, 595, 464,
260, 260, -311,
748, 2283, 2216,
-517, -945, -2171,
-326, -708, 378,
-812, -691, -232,
-560, 687, 1409,
-732, -690, -836,
-359, 645, 386,
-265, 62, -678,
145, 1644, 1208,
-555, -988, -1233,
-78, 14, 114,
-327, -358, -489,
392, 677, 697,
-201, -236, -1140,
693, 449, 178,
-243, 256, -433,
611, 1385, 2456,
-612, -901, -1464,
-307, -17, 499,
-315, -667, -254,
256, 428, 1463,
-486, -422, -1056,
655, 370, 18,
-102, -185, -276,
755, 1578, 1335,
-488, -603, -1418,
182, -93, 870,
-73, -458, -348,
835, 862, 957,
-282, -333, -746,
547, 839, 428,
273, -89, 13,
940, 1708, 2576,
-418, -1084, -1758,
-44, -358, 259,
-497, -643, -560,
99, 557, 961,
-421, -766, -917,
295, 326, 184,
175, 15, -626,
532, 878, 1981,
-443, -768, -1275,
221, 156, 268,
39, -363, -505,
695, 772, 1140,
-162, -459, -912,
709, 444, 658,
25, 303, -312,
1268, 1410, 1715,
-297, -766, -1836,
-263, -108, 1070,
-406, -13, -129,
57, 438, 2734,
-374, -487, -835,
304, 696, 164,
104, -235, 5,
1611, 1900, 1399,
-229, -582, -1325,
405, 192, 817,
-87, -438, 111,
1028, 1199, 993,
68, -175, -934,
1033, 1117, 451,
478, 200, -248,
2127, 2696, 2042,
-835, -1323, -2131,
-799, -692, 466,
-812, -1032, -469,
-622, 288, 920,
-701, -841, -1070,
-411, 512, 8,
-390, -91, -744,
-30, 1043, 1161,
-822, -1148, -1156,
-294, -46, 110,
-411, -374, -678,
214, 531, 668,
-406, -420, -1194,
487, 232, 303,
-318, 91, -472,
123, 1232, 2445,
-722, -952, -1495,
-738, -675, 1332,
-543, -606, -211,
-95, -98, 1508,
-549, -514, -1193,
473, 211, 73,
-288, -112, -389,
537, 1332, 1258,
-567, -755, -1545,
71, -283, 632,
-170, -481, -493,
681, 1002, 817,
-356, -331, -877,
419, 706, 346,
241, -34, -326,
377, 1950, 1883,
-727, -1075, -1625,
-233, -543, 116,
-524, -806, -585,
-73, 478, 729,
-288, -925, -1143,
173, 447, -52,
68, -229, -606,
449, 529, 1797,
-591, -875, -1363,
183, -144, 324,
-103, -452, -666,
623, 488, 1176,
-238, -511, -1004,
326, 552, 458,
136, 108, -319,
626, 1343, 1883,
-490, -646, -1730,
-186, -449, 984,
-738, -76, -170,
-550, 755, 2560,
-496, -510, -947,
210, 694, -52,
84, -322, -199,
1090, 1625, 1224,
-376, -603, -1396,
343, 74, 632,
-175, -502, -32,
972, 1332, 734,
52, -295, -1113,
1065, 918, 160,
393, 107, -397,
1214, 2649, 1741,
-632, -1201, -1891,
-719, -277, 353,
-651, -880, -122,
-211, 209, 1338,
-562, -714, -1059,
-208, 388, 159,
-320, -61, -551,
293, 1092, 1443,
-648, -865, -1253,
-49, -143, 305,
-401, -227, -585,
561, 532, 927,
-117, -443, -1188,
507, 436, 292,
-79, 233, -458,
671, 1025, 2396,
-633, -842, -1525,
-308, -286, 640,
-373, -621, -407,
418, 253, 1305,
-315, -581, -1137,
572, 685, -281,
61, -68, -371,
991, 1101, 1498,
-493, -683, -1362,
-47, 164, 704,
-256, -314, -268,
631, 949, 1052,
-118, -348, -833,
68, 1180, 568,
152, 117, 34,
1113, 1902, 2239,
-601, -959, -1706,
-143, -489, 480,
-332, -655, -574,
54, 353, 1192,
-462, -652, -796,
150, 549, 112,
195, -111, -515,
679, 1108, 1647,
-558, -749, -1217,
-9, 272, 341,
-53, -265, -535,
489, 843, 1298,
-120, -482, -1032,
632, 543, 408,
179, 306, -526,
1124, 1464, 2244,
-417, -786, -1562,
-224, -384, 1364,
-377, -459, -25,
385, 489, 2174,
-332, -651, -829,
544, 553, 61,
22, -113, -89,
1128, 1725, 1524,
-216, -373, -1653,
161, 316, 908,
-165, -222, -67,
1362, 1175, 789,
73, -252, -767,
738, 932, 616,
362, 246, -126,
787, 2654, 3027,
-691, -1106, -2190,
-565, -588, 524,
-590, -979, -490,
-263, 397, 982,
-577, -837, -945,
-22, 435, -49,
-190, -118, -629,
-88, 1240, 1513,
-636, -1051, -1019,
-291, 189, 259,
-257, -470, -629,
145, 945, 894,
-326, -364, -1094,
543, 260, 630,
-202, 189, -209,
357, 1379, 2091,
-569, -1075, -1449,
-714, -239, 919,
-420, -705, -84,
-109, -114, 2407,
-413, -529, -1177,
482, 368, 131,
-186, -72, -131,
861, 1255, 1220,
-611, -658, -1341,
227, -121, 631,
-176, -489, -218,
745, 1175, 957,
-321, -148, -936,
671, 966, 216,
340, -3, -143,
469, 1848, 2437,
-729, -961, -1683,
-213, -254, 321,
-511, -438, -521,
-126, 725, 903,
-340, -685, -1032,
316, 480, 20,
23, -89, -551,
353, 1051, 1789,
-544, -757, -1364,
298, -25, 436,
-100, -392, -519,
467, 754, 1078,
-210, -398, -1078,
620, 658, 630,
33, 147, -178,
921, 1687, 1921,
-325, -528, -1978,
2, -285, 910,
-371, -490, -230,
0, 597, 2010,
-496, -395, -834,
37, 945, 245,
181, -160, -144,
1481, 1373, 1357,
-355, -601, -1270,
298, 322, 672,
-193, -336, 77,
1089, 1533, 922,
177, -39, -1125,
996, 781, 536,
456, 366, -432,
1415, 2440, 2279,
-466, -758, -2325,
-303, -509, 387,
-727, -557, 66,
-145, 643, 1248,
-544, -676, -916,
-225, 862, 588,
-152, 40, -533,
423, 1423, 1558,
-572, -843, -1145,
-128, 85, 461,
-238, -257, -584,
605, 748, 861,
24, -202, -1409,
797, 487, 303,
-181, 364, -182,
616, 1378, 2942,
-494, -852, -1441,
-292, 61, 812,
-84, -723, -182,
555, 532, 1506,
-365, -493, -1057,
822, 588, 11,
-14, -18, -230,
1001, 1401, 1451,
-474, -569, -1292,
302, 62, 1062,
-70, -376, -222,
982, 974, 1149,
-196, -234, -795,
479, 1098, 499,
362, 58, 70,
1147, 2069, 2857,
-487, -878, -1824,
73, -288, 348,
-358, -500, -508,
199, 721, 1242,
-78, -697, -795,
361, 536, 196,
374, 110, -735,
847, 1051, 1896,
-366, -713, -1182,
315, 320, 429,
72, -215, -450,
759, 886, 1363,
-30, -428, -834,
861, 627, 796,
118, 468, -279,
1355, 1883, 1893,
-188, -642, -1612,
63, -175, 1198,
-418, -211, 51,
414, 587, 2601,
-234, -557, -858,
424, 889, 222,
136, -101, 83,
1413, 2278, 1383,
-84, -445, -1389,
414, 313, 1045,
29, -343, 65,
1552, 1647, 980,
183, -91, -829,
1273, 1413, 360,
553, 272, -107,
1587, 3149, 2603
};