/*- * Copyright (c) 2007 Ariff Abdullah * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef _ZCOEFF_H_ #define _ZCOEFF_H_ /* * nmult = 4 * rolloff = 0.800000 * beta = 16.000000 * nq = 128 */ static const int32_t z_coeff_q4[387] = { 53523, 53518, 53501, 53473, 53435, 53385, 53324, 53253, 53170, 53077, 52972, 52857, 52732, 52595, 52448, 52291, 52123, 51945, 51756, 51557, 51349, 51130, 50901, 50663, 50415, 50158, 49891, 49615, 49330, 49036, 48733, 48422, 48102, 47774, 47437, 47093, 46741, 46381, 46014, 45639, 45257, 44868, 44473, 44070, 43662, 43247, 42827, 42400, 41968, 41530, 41088, 40640, 40188, 39731, 39269, 38804, 38334, 37861, 37384, 36904, 36421, 35935, 35446, 34955, 34462, 33966, 33469, 32970, 32470, 31968, 31466, 30962, 30459, 29954, 29450, 28945, 28441, 27937, 27434, 26931, 26430, 25929, 25430, 24933, 24437, 23943, 23451, 22962, 22474, 21990, 21508, 21029, 20552, 20080, 19610, 19144, 18681, 18223, 17768, 17317, 16870, 16427, 15989, 15556, 15127, 14702, 14283, 13868, 13458, 13054, 12654, 12260, 11871, 11487, 11109, 10737, 10370, 10008, 9653, 9303, 8959, 8621, 8288, 7962, 7641, 7326, 7018, 6715, 6419, 6128, 5843, 5565, 5292, 5025, 4765, 4510, 4262, 4019, 3782, 3552, 3327, 3108, 2894, 2687, 2485, 2289, 2099, 1914, 1735, 1562, 1394, 1231, 1074, 921, 775, 633, 496, 365, 238, 116, 0, -113, -220, -323, -422, -516, -605, -691, -772, -849, -922, -991, -1056, -1118, -1176, -1230, -1281, -1328, -1372, -1413, -1450, -1485, -1516, -1545, -1571, -1594, -1614, -1632, -1647, -1660, -1671, -1679, -1685, -1689, -1692, -1692, -1690, -1687, -1682, -1675, -1667, -1657, -1646, -1634, -1620, -1605, -1589, -1572, -1554, -1535, -1515, -1495, -1473, -1451, -1428, -1405, -1381, -1357, -1332, -1307, -1281, -1255, -1229, -1203, -1176, -1150, -1123, -1096, -1069, -1043, -1016, -989, -963, -936, -910, -884, -858, -833, -807, -782, -757, -733, -709, -685, -662, -639, -616, -594, -572, -551, -530, -509, -489, -469, -450, -432, -413, -396, -378, -361, -345, -329, -314, -299, -284, -270, -257, -243, -231, -219, -207, -195, -184, -174, -164, -154, -145, -136, -127, -119, -112, -104, -97, -90, -84, -78, -72, -67, -62, -57, -52, -48, -44, -40, -36, -33, -30, -27, -24, -22, -19, -17, -15, -13, -12, -10, -9, -8, -7, -6, -5, -4, -3, -3, -2, -2, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; /* * nmult = 7 * rolloff = 0.800000 * beta = 16.000000 * nq = 128 */ static const int32_t z_coeff_q7[515] = { 52425, 52420, 52408, 52386, 52356, 52318, 52271, 52215, 52151, 52079, 51998, 51909, 51811, 51705, 51591, 51469, 51338, 51199, 51052, 50897, 50734, 50563, 50384, 50197, 50003, 49801, 49591, 49374, 49149, 48917, 48678, 48431, 48178, 47917, 47649, 47375, 47094, 46806, 46511, 46211, 45904, 45590, 45271, 44945, 44614, 44277, 43934, 43586, 43232, 42873, 42509, 42140, 41766, 41387, 41003, 40615, 40223, 39826, 39425, 39020, 38612, 38199, 37783, 37364, 36941, 36515, 36086, 35654, 35220, 34783, 34343, 33901, 33457, 33010, 32562, 32112, 31661, 31208, 30753, 30298, 29841, 29384, 28925, 28467, 28007, 27547, 27087, 26627, 26167, 25707, 25247, 24788, 24329, 23871, 23414, 22958, 22503, 22049, 21596, 21145, 20696, 20248, 19802, 19358, 18915, 18475, 18038, 17602, 17169, 16739, 16311, 15886, 15464, 15045, 14629, 14217, 13807, 13401, 12998, 12599, 12203, 11811, 11423, 11039, 10658, 10282, 9909, 9541, 9177, 8817, 8461, 8110, 7763, 7421, 7083, 6750, 6421, 6097, 5778, 5463, 5154, 4849, 4549, 4253, 3963, 3678, 3397, 3122, 2852, 2586, 2326, 2070, 1820, 1575, 1335, 1099, 869, 644, 424, 209, 0, -205, -405, -600, -790, -975, -1154, -1329, -1499, -1665, -1825, -1980, -2131, -2277, -2418, -2554, -2686, -2813, -2935, -3053, -3167, -3276, -3380, -3480, -3576, -3667, -3755, -3838, -3917, -3992, -4062, -4129, -4192, -4251, -4306, -4358, -4406, -4450, -4490, -4527, -4561, -4591, -4618, -4642, -4662, -4679, -4694, -4705, -4713, -4718, -4721, -4721, -4718, -4712, -4704, -4694, -4681, -4666, -4648, -4628, -4606, -4582, -4556, -4528, -4498, -4466, -4432, -4397, -4360, -4321, -4281, -4240, -4197, -4152, -4107, -4060, -4012, -3963, -3913, -3862, -3810, -3757, -3703, -3648, -3593, -3537, -3481, -3423, -3366, -3308, -3249, -3190, -3131, -3072, -3012, -2952, -2892, -2832, -2771, -2711, -2651, -2591, -2531, -2471, -2411, -2351, -2292, -2233, -2174, -2116, -2057, -2000, -1942, -1886, -1829, -1773, -1718, -1663, -1609, -1555, -1502, -1449, -1397, -1346, -1296, -1246, -1197, -1148, -1101, -1054, -1008, -962, -918, -874, -831, -788, -747, -706, -667, -628, -589, -552, -516, -480, -445, -411, -378, -346, -314, -284, -254, -225, -197, -169, -143, -117, -92, -68, -45, -22, -1, 20, 41, 60, 79, 97, 114, 131, 146, 162, 176, 190, 203, 215, 227, 238, 249, 259, 268, 277, 285, 293, 300, 307, 313, 318, 323, 328, 332, 336, 339, 341, 344, 346, 347, 348, 349, 350, 350, 350, 349, 348, 347, 345, 344, 342, 340, 337, 334, 332, 328, 325, 322, 318, 314, 310, 306, 302, 297, 293, 288, 284, 279, 274, 269, 264, 259, 254, 249, 244, 238, 233, 228, 223, 217, 212, 207, 202, 196, 191, 186, 181, 176, 171, 166, 161, 156, 151, 146, 141, 137, 132, 128, 123, 119, 115, 110, 106, 102, 98, 94, 90, 87, 83, 80, 76, 73, 69, 66, 63, 60, 57, 54, 52, 49, 46, 44, 41, 39, 37, 35, 33, 31, 29, 27, 25, 23, 22, 20, 19, 17, 16, 15, 14, 12, 11, 10, 9, 8, 8, 7, 6, 5, 5, 4, 4, 3, 3, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; /* * nmult = 11 * rolloff = 0.800000 * beta = 16.000000 * nq = 128 */ static const int32_t z_coeff_q11[771] = { 52426, 52422, 52411, 52391, 52364, 52329, 52286, 52236, 52178, 52112, 52039, 51958, 51869, 51773, 51669, 51558, 51439, 51313, 51179, 51038, 50890, 50734, 50571, 50401, 50224, 50039, 49848, 49650, 49444, 49232, 49013, 48788, 48556, 48317, 48072, 47820, 47562, 47297, 47027, 46750, 46467, 46179, 45884, 45584, 45278, 44967, 44650, 44327, 43999, 43667, 43328, 42985, 42637, 42285, 41927, 41565, 41199, 40828, 40453, 40073, 39690, 39302, 38911, 38516, 38118, 37716, 37310, 36902, 36490, 36075, 35657, 35237, 34813, 34388, 33959, 33529, 33096, 32661, 32224, 31786, 31345, 30903, 30460, 30015, 29569, 29122, 28674, 28225, 27775, 27324, 26873, 26422, 25970, 25518, 25066, 24614, 24162, 23711, 23260, 22809, 22359, 21910, 21461, 21014, 20567, 20122, 19678, 19235, 18794, 18355, 17917, 17481, 17046, 16614, 16184, 15756, 15330, 14907, 14486, 14068, 13652, 13239, 12829, 12421, 12017, 11616, 11217, 10822, 10431, 10042, 9657, 9276, 8898, 8524, 8154, 7787, 7424, 7065, 6710, 6359, 6012, 5670, 5331, 4997, 4667, 4341, 4020, 3703, 3390, 3082, 2779, 2480, 2185, 1896, 1610, 1330, 1054, 784, 517, 256, 0, -252, -499, -741, -978, -1211, -1438, -1661, -1879, -2091, -2299, -2502, -2700, -2894, -3082, -3266, -3444, -3618, -3787, -3951, -4111, -4265, -4415, -4560, -4700, -4836, -4967, -5093, -5214, -5331, -5444, -5552, -5655, -5754, -5849, -5939, -6024, -6106, -6183, -6256, -6324, -6389, -6449, -6505, -6558, -6606, -6650, -6691, -6727, -6760, -6789, -6815, -6836, -6855, -6869, -6881, -6888, -6893, -6894, -6892, -6887, -6879, -6867, -6853, -6835, -6815, -6792, -6766, -6738, -6706, -6673, -6636, -6597, -6556, -6513, -6467, -6419, -6369, -6316, -6262, -6206, -6148, -6088, -6026, -5962, -5897, -5830, -5762, -5692, -5621, -5548, -5474, -5399, -5323, -5245, -5167, -5087, -5007, -4925, -4843, -4760, -4676, -4591, -4506, -4421, -4334, -4248, -4161, -4073, -3985, -3897, -3809, -3720, -3632, -3543, -3454, -3365, -3277, -3188, -3100, -3011, -2923, -2836, -2748, -2661, -2574, -2488, -2402, -2316, -2231, -2147, -2063, -1980, -1897, -1815, -1734, -1654, -1574, -1495, -1417, -1340, -1263, -1188, -1113, -1040, -967, -895, -824, -754, -686, -618, -551, -486, -421, -358, -295, -234, -174, -115, -57, -1, 55, 109, 163, 215, 265, 315, 363, 411, 457, 502, 545, 588, 629, 669, 708, 746, 782, 818, 852, 885, 917, 947, 977, 1005, 1032, 1059, 1084, 1107, 1130, 1152, 1173, 1192, 1211, 1228, 1244, 1260, 1274, 1288, 1300, 1312, 1322, 1332, 1340, 1348, 1355, 1361, 1366, 1370, 1373, 1376, 1378, 1378, 1379, 1378, 1377, 1375, 1372, 1369, 1365, 1360, 1354, 1348, 1342, 1335, 1327, 1319, 1310, 1300, 1290, 1280, 1269, 1258, 1246, 1234, 1222, 1209, 1196, 1182, 1168, 1154, 1139, 1124, 1109, 1094, 1078, 1062, 1046, 1030, 1013, 997, 980, 963, 946, 929, 911, 894, 877, 859, 841, 824, 806, 789, 771, 753, 736, 718, 700, 683, 665, 648, 631, 613, 596, 579, 562, 545, 529, 512, 496, 479, 463, 447, 432, 416, 401, 385, 370, 355, 341, 326, 312, 298, 284, 270, 257, 244, 231, 218, 206, 194, 182, 170, 158, 147, 136, 125, 115, 104, 94, 84, 75, 65, 56, 47, 39, 31, 22, 15, 7, 0, -8, -15, -21, -28, -34, -40, -46, -51, -57, -62, -67, -71, -76, -80, -84, -88, -92, -95, -99, -102, -105, -107, -110, -112, -114, -116, -118, -120, -122, -123, -124, -125, -126, -127, -128, -129, -129, -129, -130, -130, -130, -129, -129, -129, -129, -128, -127, -127, -126, -125, -124, -123, -122, -121, -120, -118, -117, -116, -114, -113, -111, -110, -108, -106, -105, -103, -101, -100, -98, -96, -94, -92, -91, -89, -87, -85, -83, -81, -79, -77, -76, -74, -72, -70, -68, -66, -64, -63, -61, -59, -57, -56, -54, -52, -51, -49, -47, -46, -44, -42, -41, -39, -38, -37, -35, -34, -32, -31, -30, -29, -27, -26, -25, -24, -23, -22, -21, -20, -19, -18, -17, -16, -15, -14, -13, -12, -12, -11, -10, -10, -9, -8, -8, -7, -7, -6, -6, -5, -5, -5, -4, -4, -3, -3, -3, -3, -2, -2, -2, -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; /* * nmult = 23 * rolloff = 0.800000 * beta = 16.000000 * nq = 128 */ static const int32_t z_coeff_q23[1539] = { 52429, 52426, 52415, 52398, 52374, 52343, 52305, 52260, 52208, 52149, 52083, 52011, 51931, 51845, 51752, 51652, 51546, 51432, 51313, 51186, 51053, 50913, 50767, 50614, 50454, 50288, 50116, 49937, 49752, 49561, 49364, 49160, 48950, 48734, 48512, 48285, 48051, 47811, 47566, 47314, 47057, 46795, 46527, 46253, 45974, 45690, 45400, 45105, 44805, 44500, 44190, 43875, 43555, 43231, 42901, 42567, 42229, 41886, 41538, 41187, 40831, 40471, 40107, 39739, 39367, 38992, 38613, 38230, 37843, 37454, 37061, 36664, 36265, 35862, 35457, 35049, 34637, 34224, 33807, 33389, 32968, 32544, 32119, 31691, 31261, 30830, 30396, 29961, 29525, 29087, 28647, 28206, 27764, 27321, 26877, 26432, 25986, 25540, 25093, 24645, 24197, 23749, 23301, 22852, 22403, 21955, 21507, 21058, 20611, 20164, 19717, 19271, 18826, 18381, 17938, 17496, 17054, 16614, 16175, 15738, 15302, 14868, 14435, 14004, 13575, 13148, 12723, 12300, 11879, 11461, 11044, 10630, 10219, 9810, 9404, 9001, 8600, 8202, 7808, 7416, 7027, 6641, 6259, 5880, 5504, 5132, 4763, 4398, 4037, 3679, 3325, 2974, 2628, 2285, 1946, 1611, 1281, 954, 632, 313, 0, -310, -616, -917, -1213, -1505, -1793, -2076, -2355, -2629, -2898, -3163, -3423, -3678, -3929, -4175, -4416, -4652, -4884, -5110, -5332, -5549, -5761, -5968, -6171, -6368, -6560, -6748, -6931, -7108, -7281, -7449, -7612, -7769, -7922, -8070, -8214, -8352, -8485, -8613, -8737, -8855, -8969, -9078, -9182, -9281, -9376, -9466, -9551, -9631, -9706, -9777, -9843, -9905, -9962, -10014, -10062, -10105, -10144, -10179, -10209, -10235, -10256, -10273, -10286, -10294, -10299, -10299, -10295, -10288, -10276, -10260, -10240, -10217, -10190, -10158, -10124, -10085, -10043, -9998, -9949, -9896, -9840, -9781, -9719, -9653, -9584, -9512, -9437, -9359, -9278, -9194, -9107, -9018, -8926, -8831, -8734, -8634, -8532, -8427, -8320, -8211, -8099, -7986, -7870, -7752, -7633, -7511, -7388, -7263, -7136, -7007, -6877, -6746, -6613, -6479, -6343, -6206, -6068, -5929, -5789, -5648, -5506, -5363, -5219, -5074, -4929, -4783, -4637, -4490, -4343, -4195, -4047, -3899, -3750, -3602, -3453, -3304, -3155, -3007, -2858, -2710, -2562, -2414, -2267, -2120, -1974, -1828, -1682, -1538, -1394, -1250, -1108, -966, -825, -685, -546, -408, -271, -135, -1, 133, 265, 396, 526, 655, 782, 907, 1031, 1154, 1275, 1395, 1513, 1629, 1744, 1857, 1969, 2078, 2186, 2292, 2397, 2499, 2600, 2698, 2795, 2890, 2983, 3073, 3162, 3249, 3334, 3417, 3498, 3576, 3653, 3727, 3800, 3870, 3938, 4004, 4068, 4129, 4189, 4246, 4301, 4354, 4405, 4454, 4500, 4545, 4587, 4627, 4664, 4700, 4733, 4765, 4794, 4821, 4845, 4868, 4889, 4907, 4923, 4937, 4950, 4960, 4968, 4974, 4977, 4979, 4979, 4977, 4973, 4967, 4959, 4949, 4938, 4924, 4908, 4891, 4872, 4851, 4828, 4804, 4778, 4750, 4721, 4690, 4657, 4622, 4587, 4549, 4510, 4470, 4428, 4385, 4340, 4294, 4246, 4198, 4148, 4096, 4044, 3990, 3935, 3879, 3822, 3764, 3705, 3645, 3584, 3522, 3459, 3395, 3330, 3265, 3199, 3132, 3064, 2995, 2926, 2857, 2787, 2716, 2645, 2573, 2501, 2428, 2355, 2282, 2208, 2134, 2060, 1985, 1911, 1836, 1761, 1686, 1611, 1535, 1460, 1385, 1310, 1235, 1160, 1085, 1011, 936, 862, 788, 715, 641, 568, 496, 423, 352, 280, 209, 139, 69, 0, -69, -138, -205, -272, -339, -404, -469, -534, -597, -660, -722, -783, -844, -903, -962, -1020, -1077, -1133, -1189, -1243, -1296, -1349, -1400, -1451, -1500, -1549, -1596, -1643, -1688, -1732, -1776, -1818, -1859, -1899, -1938, -1976, -2013, -2049, -2083, -2117, -2149, -2180, -2211, -2240, -2267, -2294, -2320, -2344, -2367, -2390, -2411, -2430, -2449, -2467, -2483, -2499, -2513, -2526, -2538, -2549, -2558, -2567, -2575, -2581, -2586, -2591, -2594, -2596, -2597, -2597, -2596, -2594, -2591, -2586, -2581, -2575, -2568, -2560, -2551, -2541, -2530, -2518, -2505, -2491, -2477, -2461, -2445, -2428, -2410, -2391, -2371, -2351, -2330, -2308, -2285, -2261, -2237, -2212, -2187, -2160, -2134, -2106, -2078, -2049, -2020, -1990, -1959, -1928, -1897, -1865, -1832, -1799, -1766, -1732, -1698, -1663, -1628, -1593, -1557, -1521, -1484, -1448, -1411, -1373, -1336, -1298, -1260, -1222, -1184, -1146, -1107, -1068, -1030, -991, -952, -913, -874, -835, -795, -756, -717, -678, -639, -601, -562, -523, -485, -446, -408, -370, -332, -294, -256, -219, -182, -145, -109, -72, -36, -1, 35, 70, 105, 139, 173, 207, 240, 273, 306, 338, 370, 401, 432, 463, 493, 522, 551, 580, 608, 635, 663, 689, 715, 741, 766, 790, 814, 838, 861, 883, 905, 926, 947, 967, 986, 1005, 1024, 1041, 1059, 1075, 1091, 1107, 1122, 1136, 1150, 1163, 1175, 1187, 1199, 1209, 1219, 1229, 1238, 1246, 1254, 1261, 1268, 1274, 1280, 1285, 1289, 1293, 1296, 1299, 1301, 1302, 1303, 1304, 1304, 1303, 1302, 1300, 1298, 1296, 1293, 1289, 1285, 1280, 1275, 1269, 1263, 1257, 1250, 1242, 1234, 1226, 1217, 1208, 1199, 1189, 1178, 1168, 1157, 1145, 1133, 1121, 1108, 1096, 1082, 1069, 1055, 1041, 1026, 1012, 997, 981, 966, 950, 934, 918, 901, 884, 867, 850, 833, 816, 798, 780, 762, 744, 726, 708, 689, 670, 652, 633, 614, 595, 576, 557, 538, 519, 500, 481, 461, 442, 423, 404, 385, 365, 346, 327, 308, 289, 270, 252, 233, 214, 196, 177, 159, 141, 122, 104, 87, 69, 51, 34, 17, -1, -17, -34, -51, -67, -83, -99, -115, -131, -146, -161, -176, -191, -206, -220, -234, -248, -261, -275, -288, -301, -313, -325, -338, -349, -361, -372, -383, -394, -404, -415, -424, -434, -443, -452, -461, -470, -478, -486, -494, -501, -508, -515, -521, -528, -534, -539, -545, -550, -555, -559, -563, -567, -571, -575, -578, -581, -583, -585, -588, -589, -591, -592, -593, -594, -594, -595, -595, -594, -594, -593, -592, -591, -590, -588, -586, -584, -581, -579, -576, -573, -570, -566, -563, -559, -555, -551, -546, -542, -537, -532, -527, -522, -516, -511, -505, -499, -493, -487, -481, -474, -468, -461, -454, -448, -440, -433, -426, -419, -411, -404, -396, -389, -381, -373, -365, -357, -349, -341, -333, -325, -316, -308, -300, -291, -283, -275, -266, -258, -249, -241, -233, -224, -216, -207, -199, -190, -182, -173, -165, -157, -148, -140, -132, -124, -116, -108, -99, -91, -84, -76, -68, -60, -52, -45, -37, -30, -22, -15, -8, -1, 7, 14, 20, 27, 34, 41, 47, 54, 60, 66, 72, 78, 84, 90, 96, 101, 107, 112, 117, 122, 127, 132, 137, 142, 146, 151, 155, 159, 163, 167, 171, 175, 178, 182, 185, 188, 191, 194, 197, 200, 202, 205, 207, 209, 212, 214, 215, 217, 219, 220, 222, 223, 224, 225, 226, 227, 228, 229, 229, 229, 230, 230, 230, 230, 230, 230, 229, 229, 229, 228, 227, 227, 226, 225, 224, 223, 221, 220, 219, 217, 216, 214, 213, 211, 209, 207, 205, 203, 201, 199, 197, 195, 192, 190, 188, 185, 183, 180, 178, 175, 172, 170, 167, 164, 161, 158, 155, 153, 150, 147, 144, 141, 138, 135, 132, 128, 125, 122, 119, 116, 113, 110, 107, 103, 100, 97, 94, 91, 88, 85, 81, 78, 75, 72, 69, 66, 63, 60, 57, 54, 51, 48, 45, 42, 39, 36, 34, 31, 28, 25, 23, 20, 17, 15, 12, 9, 7, 4, 2, 0, -3, -5, -8, -10, -12, -14, -16, -18, -21, -23, -25, -26, -28, -30, -32, -34, -35, -37, -39, -40, -42, -43, -45, -46, -48, -49, -50, -52, -53, -54, -55, -56, -57, -58, -59, -60, -61, -62, -62, -63, -64, -64, -65, -65, -66, -66, -67, -67, -68, -68, -68, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, -68, -68, -68, -68, -67, -67, -67, -66, -66, -65, -65, -64, -64, -63, -63, -62, -61, -61, -60, -60, -59, -58, -57, -57, -56, -55, -55, -54, -53, -52, -51, -51, -50, -49, -48, -47, -46, -45, -45, -44, -43, -42, -41, -40, -39, -38, -38, -37, -36, -35, -34, -33, -32, -31, -30, -29, -29, -28, -27, -26, -25, -24, -23, -22, -22, -21, -20, -19, -18, -18, -17, -16, -15, -14, -14, -13, -12, -11, -11, -10, -9, -8, -8, -7, -6, -6, -5, -5, -4, -3, -3, -2, -2, -1, -1, 0, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10, 10, 10, 10, 10, 10, 10, 10, 10, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 6, 6, 6, 6, 6, 6, 5, 5, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; /* * nmult = 47 * rolloff = 0.800000 * beta = 16.000000 * nq = 128 */ static const int32_t z_coeff_q47[3075] = { 52428, 52425, 52414, 52397, 52374, 52343, 52306, 52262, 52211, 52154, 52089, 52019, 51941, 51857, 51766, 51668, 51564, 51453, 51336, 51212, 51082, 50945, 50802, 50652, 50496, 50334, 50165, 49991, 49810, 49622, 49429, 49229, 49024, 48813, 48595, 48372, 48143, 47908, 47667, 47421, 47169, 46912, 46649, 46380, 46106, 45827, 45543, 45254, 44959, 44659, 44355, 44045, 43731, 43412, 43088, 42759, 42426, 42089, 41747, 41401, 41051, 40696, 40337, 39975, 39608, 39238, 38864, 38486, 38105, 37721, 37332, 36941, 36546, 36149, 35748, 35344, 34937, 34528, 34116, 33701, 33284, 32865, 32443, 32019, 31592, 31164, 30734, 30302, 29868, 29433, 28996, 28558, 28118, 27677, 27235, 26791, 26347, 25902, 25456, 25009, 24562, 24114, 23666, 23218, 22769, 22320, 21871, 21422, 20974, 20525, 20077, 19630, 19183, 18736, 18290, 17845, 17401, 16958, 16516, 16075, 15636, 15198, 14761, 14325, 13892, 13460, 13029, 12601, 12174, 11750, 11328, 10907, 10489, 10074, 9661, 9250, 8842, 8436, 8034, 7634, 7237, 6842, 6451, 6063, 5678, 5297, 4918, 4543, 4171, 3803, 3439, 3078, 2720, 2367, 2017, 1671, 1328, 990, 656, 326, 0, -322, -640, -954, -1263, -1568, -1869, -2165, -2457, -2744, -3027, -3305, -3578, -3847, -4112, -4371, -4626, -4876, -5122, -5362, -5598, -5829, -6055, -6276, -6493, -6704, -6911, -7112, -7309, -7500, -7687, -7869, -8045, -8217, -8384, -8545, -8702, -8854, -9000, -9142, -9279, -9410, -9537, -9659, -9776, -9887, -9994, -10096, -10193, -10285, -10373, -10455, -10532, -10605, -10673, -10736, -10795, -10848, -10897, -10941, -10981, -11016, -11046, -11072, -11094, -11110, -11123, -11131, -11134, -11134, -11129, -11119, -11106, -11088, -11067, -11041, -11011, -10977, -10939, -10897, -10852, -10802, -10749, -10693, -10632, -10568, -10500, -10429, -10355, -10277, -10196, -10111, -10024, -9933, -9839, -9742, -9642, -9540, -9434, -9326, -9215, -9101, -8984, -8865, -8744, -8620, -8494, -8366, -8235, -8102, -7967, -7831, -7692, -7551, -7408, -7264, -7118, -6970, -6821, -6670, -6518, -6365, -6210, -6054, -5897, -5738, -5579, -5419, -5257, -5095, -4933, -4769, -4605, -4440, -4275, -4109, -3943, -3777, -3610, -3443, -3276, -3109, -2942, -2775, -2608, -2441, -2275, -2109, -1943, -1777, -1612, -1448, -1284, -1121, -958, -796, -635, -475, -316, -158, -1, 156, 311, 465, 617, 769, 919, 1068, 1215, 1361, 1505, 1648, 1789, 1929, 2067, 2203, 2338, 2471, 2601, 2731, 2858, 2983, 3106, 3228, 3347, 3464, 3579, 3692, 3803, 3912, 4018, 4123, 4225, 4324, 4422, 4517, 4610, 4700, 4788, 4874, 4957, 5038, 5116, 5192, 5266, 5336, 5405, 5471, 5534, 5595, 5653, 5709, 5763, 5813, 5861, 5907, 5950, 5990, 6028, 6064, 6097, 6127, 6154, 6180, 6202, 6222, 6240, 6255, 6267, 6277, 6285, 6290, 6293, 6293, 6290, 6286, 6279, 6269, 6257, 6243, 6226, 6207, 6186, 6163, 6137, 6109, 6079, 6047, 6012, 5975, 5937, 5896, 5853, 5808, 5761, 5712, 5661, 5609, 5554, 5498, 5439, 5379, 5317, 5254, 5189, 5122, 5053, 4983, 4911, 4838, 4764, 4688, 4610, 4531, 4451, 4369, 4287, 4203, 4118, 4031, 3944, 3855, 3766, 3676, 3584, 3492, 3399, 3305, 3210, 3114, 3018, 2921, 2824, 2725, 2627, 2527, 2428, 2328, 2227, 2126, 2025, 1924, 1822, 1721, 1619, 1517, 1415, 1312, 1210, 1108, 1006, 904, 803, 701, 600, 499, 398, 298, 198, 99, 0, -99, -197, -295, -391, -488, -583, -678, -772, -865, -958, -1050, -1141, -1231, -1320, -1408, -1495, -1581, -1666, -1750, -1833, -1915, -1996, -2075, -2154, -2231, -2307, -2381, -2455, -2527, -2597, -2667, -2735, -2801, -2867, -2931, -2993, -3054, -3113, -3171, -3228, -3283, -3336, -3388, -3438, -3487, -3534, -3579, -3623, -3666, -3706, -3746, -3783, -3819, -3853, -3885, -3916, -3946, -3973, -3999, -4023, -4046, -4066, -4086, -4103, -4119, -4133, -4146, -4156, -4166, -4173, -4179, -4183, -4186, -4187, -4186, -4184, -4180, -4174, -4167, -4159, -4148, -4136, -4123, -4108, -4092, -4074, -4054, -4033, -4011, -3987, -3962, -3935, -3907, -3878, -3847, -3815, -3781, -3746, -3710, -3673, -3634, -3594, -3553, -3510, -3467, -3422, -3376, -3330, -3282, -3232, -3182, -3131, -3079, -3026, -2972, -2917, -2862, -2805, -2747, -2689, -2630, -2570, -2510, -2448, -2386, -2324, -2260, -2197, -2132, -2067, -2002, -1936, -1869, -1802, -1735, -1667, -1599, -1531, -1462, -1394, -1324, -1255, -1185, -1116, -1046, -976, -906, -836, -766, -696, -625, -555, -485, -416, -346, -276, -207, -138, -69, -1, 68, 136, 203, 271, 338, 404, 470, 536, 601, 666, 730, 793, 856, 918, 980, 1041, 1102, 1161, 1220, 1279, 1336, 1393, 1449, 1504, 1559, 1612, 1665, 1717, 1768, 1818, 1867, 1916, 1963, 2009, 2055, 2099, 2143, 2185, 2226, 2267, 2306, 2344, 2381, 2417, 2452, 2486, 2519, 2551, 2581, 2611, 2639, 2666, 2692, 2717, 2741, 2763, 2785, 2805, 2824, 2842, 2859, 2874, 2889, 2902, 2914, 2924, 2934, 2943, 2950, 2956, 2961, 2965, 2967, 2969, 2969, 2968, 2966, 2963, 2959, 2953, 2947, 2939, 2930, 2920, 2909, 2897, 2884, 2870, 2855, 2838, 2821, 2803, 2783, 2763, 2741, 2719, 2696, 2672, 2646, 2620, 2593, 2565, 2536, 2507, 2476, 2445, 2413, 2380, 2346, 2311, 2276, 2240, 2203, 2165, 2127, 2088, 2049, 2009, 1968, 1927, 1885, 1842, 1799, 1755, 1711, 1667, 1622, 1576, 1530, 1484, 1437, 1390, 1342, 1295, 1246, 1198, 1149, 1100, 1051, 1002, 952, 902, 852, 802, 752, 702, 652, 601, 551, 500, 450, 400, 349, 299, 249, 199, 149, 99, 49, -1, -50, -99, -148, -196, -245, -293, -341, -388, -435, -482, -529, -575, -620, -665, -710, -754, -798, -842, -885, -927, -969, -1010, -1051, -1091, -1131, -1170, -1208, -1246, -1283, -1319, -1355, -1390, -1425, -1459, -1492, -1524, -1556, -1587, -1617, -1647, -1675, -1703, -1731, -1757, -1783, -1808, -1832, -1855, -1877, -1899, -1920, -1940, -1959, -1977, -1995, -2011, -2027, -2042, -2056, -2069, -2082, -2093, -2104, -2114, -2123, -2131, -2138, -2144, -2150, -2155, -2158, -2161, -2164, -2165, -2165, -2165, -2164, -2161, -2159, -2155, -2150, -2145, -2139, -2132, -2124, -2115, -2106, -2096, -2085, -2073, -2061, -2047, -2033, -2019, -2003, -1987, -1970, -1953, -1934, -1915, -1896, -1876, -1855, -1833, -1811, -1788, -1765, -1741, -1716, -1691, -1665, -1639, -1612, -1585, -1557, -1529, -1500, -1471, -1441, -1411, -1380, -1349, -1318, -1286, -1254, -1221, -1188, -1155, -1121, -1087, -1053, -1019, -984, -949, -914, -879, -843, -807, -771, -735, -699, -662, -626, -589, -552, -516, -479, -442, -405, -368, -331, -294, -257, -220, -183, -147, -110, -73, -37, -1, 36, 72, 108, 143, 179, 214, 249, 284, 319, 353, 387, 421, 454, 488, 520, 553, 585, 617, 649, 680, 711, 741, 771, 800, 829, 858, 886, 914, 941, 968, 995, 1021, 1046, 1071, 1095, 1119, 1142, 1165, 1187, 1209, 1230, 1251, 1271, 1290, 1309, 1328, 1345, 1362, 1379, 1395, 1410, 1425, 1439, 1453, 1465, 1478, 1489, 1500, 1511, 1521, 1530, 1538, 1546, 1553, 1560, 1566, 1571, 1576, 1580, 1584, 1586, 1589, 1590, 1591, 1591, 1591, 1590, 1589, 1587, 1584, 1581, 1577, 1572, 1567, 1561, 1555, 1548, 1541, 1533, 1524, 1515, 1505, 1495, 1484, 1473, 1461, 1448, 1435, 1422, 1408, 1394, 1379, 1363, 1348, 1331, 1315, 1297, 1280, 1262, 1243, 1224, 1205, 1185, 1165, 1145, 1124, 1103, 1081, 1059, 1037, 1014, 992, 968, 945, 921, 897, 873, 849, 824, 799, 774, 749, 723, 697, 671, 645, 619, 593, 566, 540, 513, 486, 459, 432, 405, 378, 351, 324, 297, 270, 242, 215, 188, 161, 134, 107, 80, 53, 26, 0, -27, -54, -80, -106, -132, -158, -184, -210, -235, -260, -285, -310, -335, -359, -383, -407, -431, -454, -478, -500, -523, -545, -567, -589, -610, -631, -652, -673, -693, -712, -732, -751, -769, -788, -805, -823, -840, -857, -873, -889, -905, -920, -934, -949, -962, -976, -989, -1001, -1013, -1025, -1036, -1047, -1057, -1067, -1077, -1086, -1094, -1102, -1110, -1117, -1124, -1130, -1136, -1141, -1146, -1150, -1154, -1157, -1160, -1163, -1165, -1166, -1167, -1168, -1168, -1168, -1167, -1166, -1165, -1163, -1160, -1157, -1154, -1150, -1146, -1141, -1136, -1130, -1124, -1118, -1111, -1104, -1096, -1089, -1080, -1071, -1062, -1053, -1043, -1033, -1022, -1011, -1000, -988, -976, -964, -951, -938, -925, -911, -897, -883, -869, -854, -839, -824, -808, -792, -776, -760, -743, -727, -710, -692, -675, -657, -640, -622, -604, -585, -567, -548, -530, -511, -492, -473, -454, -434, -415, -395, -376, -356, -337, -317, -297, -277, -257, -238, -218, -198, -178, -158, -138, -118, -99, -79, -59, -40, -20, -1, 19, 38, 58, 77, 96, 115, 133, 152, 171, 189, 207, 225, 243, 261, 279, 296, 313, 331, 347, 364, 380, 397, 413, 428, 444, 459, 474, 489, 504, 518, 532, 546, 560, 573, 586, 598, 611, 623, 635, 646, 658, 669, 679, 690, 700, 709, 719, 728, 736, 745, 753, 761, 768, 775, 782, 789, 795, 800, 806, 811, 816, 820, 824, 828, 832, 835, 837, 840, 842, 844, 845, 846, 847, 847, 847, 847, 846, 846, 844, 843, 841, 839, 836, 833, 830, 827, 823, 819, 814, 810, 805, 799, 794, 788, 782, 775, 769, 762, 755, 747, 739, 731, 723, 715, 706, 697, 688, 678, 668, 659, 648, 638, 628, 617, 606, 595, 583, 572, 560, 548, 536, 524, 512, 500, 487, 474, 461, 448, 435, 422, 409, 395, 382, 368, 354, 340, 326, 313, 299, 284, 270, 256, 242, 228, 213, 199, 185, 170, 156, 142, 127, 113, 99, 84, 70, 56, 42, 28, 14, -1, -14, -28, -42, -56, -70, -83, -97, -110, -124, -137, -150, -163, -176, -189, -201, -214, -226, -238, -250, -262, -274, -286, -297, -309, -320, -331, -341, -352, -362, -373, -383, -393, -402, -412, -421, -430, -439, -448, -456, -464, -472, -480, -488, -495, -502, -509, -516, -522, -528, -534, -540, -545, -551, -556, -560, -565, -569, -573, -577, -581, -584, -587, -590, -593, -595, -597, -599, -601, -602, -603, -604, -605, -605, -606, -606, -605, -605, -604, -603, -602, -601, -599, -597, -595, -593, -590, -587, -584, -581, -578, -574, -570, -566, -562, -558, -553, -548, -543, -538, -532, -527, -521, -515, -509, -503, -496, -490, -483, -476, -469, -462, -454, -447, -439, -431, -423, -415, -407, -399, -390, -381, -373, -364, -355, -346, -337, -328, -319, -309, -300, -290, -281, -271, -261, -252, -242, -232, -222, -212, -202, -192, -182, -172, -162, -152, -142, -131, -121, -111, -101, -91, -81, -71, -61, -50, -40, -30, -20, -10, 0, 9, 19, 29, 39, 48, 58, 67, 77, 86, 96, 105, 114, 123, 132, 141, 150, 158, 167, 175, 184, 192, 200, 208, 216, 224, 232, 239, 247, 254, 261, 268, 275, 282, 288, 295, 301, 307, 313, 319, 325, 330, 336, 341, 346, 351, 356, 360, 365, 369, 373, 377, 381, 385, 388, 391, 395, 397, 400, 403, 405, 408, 410, 412, 413, 415, 416, 418, 419, 420, 420, 421, 421, 422, 422, 422, 421, 421, 420, 420, 419, 418, 416, 415, 414, 412, 410, 408, 406, 404, 401, 399, 396, 393, 390, 387, 384, 380, 377, 373, 369, 365, 361, 357, 353, 348, 344, 339, 334, 329, 324, 319, 314, 309, 303, 298, 292, 287, 281, 275, 269, 263, 257, 251, 245, 239, 232, 226, 219, 213, 206, 200, 193, 186, 180, 173, 166, 159, 152, 146, 139, 132, 125, 118, 111, 104, 97, 90, 83, 76, 69, 62, 55, 48, 41, 34, 27, 20, 13, 6, -1, -7, -14, -21, -27, -34, -41, -47, -54, -60, -66, -73, -79, -85, -91, -97, -103, -109, -115, -121, -127, -132, -138, -143, -149, -154, -159, -164, -169, -174, -179, -184, -189, -193, -198, -202, -206, -211, -215, -219, -222, -226, -230, -233, -237, -240, -243, -246, -249, -252, -255, -258, -260, -263, -265, -267, -269, -271, -273, -275, -276, -278, -279, -280, -282, -283, -284, -284, -285, -286, -286, -286, -287, -287, -287, -287, -286, -286, -286, -285, -284, -284, -283, -282, -281, -279, -278, -277, -275, -274, -272, -270, -268, -266, -264, -262, -260, -257, -255, -252, -250, -247, -244, -241, -238, -235, -232, -229, -226, -222, -219, -216, -212, -208, -205, -201, -197, -193, -190, -186, -182, -178, -173, -169, -165, -161, -157, -152, -148, -144, -139, -135, -130, -126, -121, -117, -112, -107, -103, -98, -93, -89, -84, -79, -75, -70, -65, -61, -56, -51, -47, -42, -37, -33, -28, -23, -19, -14, -10, -5, -1, 4, 8, 13, 17, 22, 26, 30, 35, 39, 43, 47, 52, 56, 60, 64, 68, 72, 76, 79, 83, 87, 90, 94, 98, 101, 105, 108, 111, 114, 118, 121, 124, 127, 130, 133, 135, 138, 141, 143, 146, 148, 151, 153, 155, 157, 159, 161, 163, 165, 167, 169, 170, 172, 173, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 184, 185, 185, 186, 186, 186, 186, 187, 187, 187, 186, 186, 186, 186, 185, 185, 184, 184, 183, 182, 181, 180, 179, 178, 177, 176, 175, 174, 172, 171, 169, 168, 166, 165, 163, 161, 159, 158, 156, 154, 152, 150, 148, 145, 143, 141, 139, 136, 134, 132, 129, 127, 124, 122, 119, 116, 114, 111, 108, 106, 103, 100, 97, 94, 92, 89, 86, 83, 80, 77, 74, 71, 68, 65, 62, 59, 56, 53, 50, 47, 44, 41, 38, 35, 32, 29, 26, 23, 20, 17, 14, 11, 8, 5, 2, -1, -3, -6, -9, -12, -15, -17, -20, -23, -26, -28, -31, -34, -36, -39, -41, -44, -46, -49, -51, -54, -56, -58, -60, -63, -65, -67, -69, -71, -73, -75, -77, -79, -81, -83, -85, -86, -88, -90, -91, -93, -94, -96, -97, -99, -100, -101, -102, -104, -105, -106, -107, -108, -109, -110, -111, -111, -112, -113, -113, -114, -115, -115, -116, -116, -116, -117, -117, -117, -117, -117, -117, -117, -117, -117, -117, -117, -117, -117, -116, -116, -116, -115, -115, -114, -114, -113, -112, -112, -111, -110, -109, -109, -108, -107, -106, -105, -104, -103, -102, -101, -100, -98, -97, -96, -95, -93, -92, -91, -89, -88, -86, -85, -83, -82, -80, -79, -77, -76, -74, -72, -71, -69, -67, -66, -64, -62, -61, -59, -57, -55, -53, -52, -50, -48, -46, -44, -43, -41, -39, -37, -35, -33, -31, -30, -28, -26, -24, -22, -20, -19, -17, -15, -13, -11, -9, -8, -6, -4, -2, -1, 1, 3, 5, 6, 8, 10, 11, 13, 15, 16, 18, 20, 21, 23, 24, 26, 27, 29, 30, 31, 33, 34, 36, 37, 38, 39, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 56, 57, 58, 59, 60, 60, 61, 62, 62, 63, 63, 64, 64, 65, 65, 66, 66, 66, 67, 67, 67, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 67, 67, 67, 67, 66, 66, 66, 65, 65, 64, 64, 63, 63, 62, 62, 61, 60, 60, 59, 59, 58, 57, 57, 56, 55, 54, 53, 53, 52, 51, 50, 49, 48, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 0, -1, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14, -14, -15, -16, -17, -18, -18, -19, -20, -21, -21, -22, -23, -24, -24, -25, -26, -26, -27, -27, -28, -29, -29, -30, -30, -31, -31, -32, -32, -33, -33, -33, -34, -34, -34, -35, -35, -35, -36, -36, -36, -37, -37, -37, -37, -37, -37, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, -37, -37, -37, -37, -37, -36, -36, -36, -36, -36, -35, -35, -35, -34, -34, -34, -33, -33, -33, -32, -32, -31, -31, -31, -30, -30, -29, -29, -28, -28, -28, -27, -27, -26, -26, -25, -25, -24, -24, -23, -23, -22, -21, -21, -20, -20, -19, -19, -18, -18, -17, -17, -16, -15, -15, -14, -14, -13, -13, -12, -11, -11, -10, -10, -9, -9, -8, -8, -7, -6, -6, -5, -5, -4, -4, -3, -3, -2, -2, -1, -1, 0, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 10, 10, 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 17, 17, 17, 17, 17, 17, 17, 17, 17, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 12, 12, 12, 12, 11, 11, 11, 11, 10, 10, 10, 10, 9, 9, 9, 9, 8, 8, 8, 7, 7, 7, 7, 6, 6, 6, 6, 5, 5, 5, 5, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0, -1, -1, -1, -1, -1, -2, -2, -2, -2, -2, -3, -3, -3, -3, -3, -4, -4, -4, -4, -4, -5, -5, -5, -5, -5, -5, -5, -6, -6, -6, -6, -6, -6, -6, -6, -7, -7, -7, -7, -7, -7, -7, -7, -7, -7, -7, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -7, -7, -7, -7, -7, -7, -7, -7, -7, -7, -7, -7, -7, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -6, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -3, -3, -3, -3, -3, -3, -3, -3, -3, -3, -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; #endif /* !_ZCOEFF_H */